RPS Include Content

Description

The RPS Include Content plugin is useful when you need to include the same content across many posts or pages. For example, you may want to place your company boilerplate at the bottom of press releases in your News section. Instead of pasting the boilerplate copy at the end of each of these pages, you can now insert the shortcode (along with the post ID, and for multisite configurations, the blog ID) where that content should appear.

When you modify your source copy, changes will appear on all pages that contain the shortcode. There’s no need to open and modify multiple pages.

When a user previews the post from the WordPress Administration, the included content is distinguished with an on-hover highlight. A link is provided so that the source content can be conveniently accessed and modified. The preview of the include will not distort the target page – the width, height and position will remain as defined by the site.

To easily obtain the blog ID and post ID, install the free RPS Blog Info plugin, which places that information (and much more) on your WordPress 3.3 Toolbar.

New Features since version 1.1.6

  • Include featured image of the included post with optional wrapper and custom class.

Features

  • Allows specific shortcodes to display within included posts.
  • Respects the more tag in posts automatically.
  • Set the length of the content to be displayed by word count.
  • Option to remove the hover interface.
  • Option to include private content.
  • Display the title of the included post without any content.
  • Include the title of the included post with or without a hyperlink.
  • Include a page or a post in another page or post.
  • Specify whether the content or the excerpt should be used.
  • Updates made to source content are reflected on all target pages.
  • Source content pulled into a page is easily distinguishable and accessible when viewing the page on the front-end while logged into the WordPress back-end.
  • Protects against generating include loops and calling nonexistent source content.
  • Displays errors on the front-end to logged-in page/post editors.
  • Compatible with single and multisite installs.
  • Support for password protected posts.
  • Strip shortcodes from included posts.
  • Default Settings page.

Installation

  1. Upload the rps-include-content directory and its containing files to the /wp-content/plugins/ directory.
  2. Activate the plugin through the “Plugins” menu in WordPress.

FAQ

How does the RPS Include Content shortcode work?

The basic syntax of the shortcode is:

[rps-include blog=# post=#]

You do not need to specify the blog ID if you are not in a multisite environment.

What other shortcode attributes can be used?
  • title – Use a boolean (true/false) to specify whether to display the title of the source content on the target post/pages. The default is ‘false’.
  • titletag – Use h1 through h6 to define the tag to wrap around the title. The default is ‘h2’.
  • titlelink – Specify whether the titletag should be a link to the included post. The default is ‘false’.
  • content – Specify whether to use the included post’s content, excerpt, lede, full or none. The default is ‘content’. Note that if you set the content to none then the title attribute is automatically set to true, since something of the included content should be shown. Using the “full” option ignores the “more” tag of the included content.
  • length – Define the length in words of the text that appears before the more link. The default is 55. This setting has no effect if a more tag is present in the included content.
  • filter – Force the included content to be formatted. The default is ‘false’.
  • shortcodes – Specify whether shortcodes should be allowed to remain in included posts. The default is ‘true’.
  • allow_shortcodes – Specify which shortcodes should be allowed to remain in included posts. Overrides the shortcodes attribute. (ie. gallery and caption)
  • more_text – Specify the string to be presented as the “more text”. The default is ‘Read more …’.
  • length – Specify that only a specific number of words should be used before the more link is displayed. Requires that the content attribute be set to “lede”. The default is 55.
  • hover – Define whether to show the hover interface on the included content. The default is ‘true’. You can set the default behavior on the Settings page.
  • private – Determines if included content with a status of private should be displayed regardless of current user capabilities. The default is ‘false’. You can set the default behavior on the Settings page.
  • featured_image – Determines if the featured image associated with the included content is displayed. The default is ‘false’.
  • featured_image_size – Specifies the size of the image to retrieve by name. The default is ‘post-thumbnail’.
  • featured_image_wrap – Determines if the featured image is wrapped with a div. The default is ‘false’.
  • featured_image_wrap_class – Specifies the class associated with the featured image wrap. The default is ‘post-thumbnail’.
How do I add the capability “manage_rps_include_content” to roles other than the Administrator role?

You can use Justin Tadlock’s dependable Members plugin to enable the capability for other roles.

What if my included content loses its formatting?

It seems that there are cases where the default content filters are not applied before the content is displayed. If this is the case then you simply need to add the shortcode attribute “filter” and set it to “true”.

What if I have shortcodes in my included content that I don’t want to display?

Add the “shortcode” attribute and set it to “false”. Keep in mind that using this method will remove all shortcodes from the included content, including any rps-include shortcodes that are designed to call included content that is nested inside other included content. However, this should not affect most users.

[rps-include post="500" shortcodes="false"]

You may consider using the “allow_shortcodes” attribute instead to specify which shortcodes should be displayed when the content is included elsewhere. This overrides the “shortcode” attribute setting so there is no need to provide it. Be sure to pass the shortcodes as a comma delimited string as in the example below.

[rps-include post="500" allow_shortcodes="gallery,caption"]
So what if I want to show the title of the source content (blog 2, post 500) wrapped in an h3 with the title being a link?

[rps-include blog=”2″ post=”500″ title=”true” titletag=”h3″ titlelink=”true”]

What if I only want to show the title of the source content?

[rps-include post=”500″ content=”none”]

Setting the content attribute to ‘none’ forces the title to show.

How can I find the blog and post IDs?

To easily obtain the blog ID and post ID, install the free RPS Blog Info plugin, which places that information (and much more) on your WordPress 3.3 Toolbar.

Can I include pages or posts that already have includes within them?

Yes. RPS Include Content supports “nested” includes. In addition, it prevents infinite loops and duplicate calls to the same content.

What happens if I include a post that does not exist?

If you are logged in and have the manage_rps_include_content capability, you will see an error message appear in place of the shortcode when viewing the public site. Users that are not logged in, or do not have the appropriate capability will not see the error message.

What if the included post is protected by a password?

The included post title will appear followed by the password form, just like the default WordPress behavior.

How do I easily access the source content to edit it?

The best way is to view the page on the public site while logged in. Each piece of source content will be marked with an “i” symbol and a vertical line appearing in theright margin. Hovering over the included content will display “View” and “Edit” buttons. Clicking Edit will take you to the source post/page.

Is it possible to include content into different web sites?

You can include content across different Web sites as long as they are in the same network. A multisite network is a collection of sites that all share the same WordPress installation.

How do I wrap the output from the plugin with my own markup?

You should use the rps_include_content_html filter by adding the following to your theme’s functions file:

function rps_include_content_wrap( $html ) {
    $html = '' . $html . '';
    return $html;
}
add_filter( 'rps_include_content_html', 'rps_include_content_wrap' );

Adjust the code as necessary to get the desired markup around the included content.

Reviews

Great plugin, excellent support

The plugin does exactly what it says and it provides many options for customising the included content. Support has been excellent, too.

I would suggest adding an option to style the content without editing the theme functions.

This one works!

I need to include a block of content on the top of various posts. That content changes from time to time so an ‘Include’ function is a significant time saver.

Before coming across this sweet plugin, I tried 3 others that failed to get the job. I highly recommend this one.

Very thorough

This plugin covers every possible scenario I can come up with, and then some. It will be indispensable for my multisite. And it works perfectly.

Simply the best

I wished I saw this plugin earlier. I just wasted about 5 hrs of my life looking for other plugins. This is simply the best among them all.

Just install the plugin, activate it. Create a page that contains the content you wish to replicate. Edit the shortcode by adding the id of the page you created. If you are on multi site, add your sites id. Paste this shortcode on any page you wish to show the content. That is all.

Nice Plugin

Nice plugin, works great for the content

I couldn’t get title to display, maybe it’s new WordPress version issue?

Read all 19 reviews

Contributors & Developers

“RPS Include Content” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.1.8

  • Adds option to display full content of included post/page ignoring the presence of a “more” tag.

1.1.7

  • Avoids duplicated content, such as sharing buttons, when setting the filter option to “true”.

1.1.6

  • Size of included featured image can be specified by name.
  • Featured image inclusion now works with multisite.
  • Featured image can now be wrapped and supplied with a custom class.

1.1.5

  • Added option to include the featured image.

1.1.4

  • Updated version number.

1.1.3

  • Fixed bug that prevented saving settings since settings were not initialized.
  • Added check for Administrator role so that add_cap function would not result in a fatal error if role does not exist.

1.1.2

  • Added filter hook to HTML output.

1.1.1

  • Fixed bug that prevented shortcodes from showing by default.

1.1.0

  • Added support for more tag in posts.
  • Added attribute to specify the length of the content being included.
  • Added attribute to define which shortcodes should be processed and displayed.
  • Added option disable hover state on included content.
  • Added option to include private content.

1.0.17

  • Fixed issue that would prevent included content from displaying on multisite installs.

1.0.16

  • Added check to make certain that included content has a status of ‘publish’.

1.0.15

  • Added shortcodes option to allow shortcodes to be removed from included content.

1.0.14

  • Fixed bug introduced in 1.0.13 which rendered title display impossible.

1.0.13

  • Added filter option to force content formatting.

1.0.12

  • Added option to set the content to none.

1.0.11

  • Added option to link the title to the included post.

1.0.10

  • Removed filter that caused duplication of included content in some cases.
  • Toned down the souce content highlighting so it is not as bright.

1.0.9

  • Added support for requiring authentication when password protected posts are included.

1.0.8

  • Added option to override the content with the excerpt of the included post.

1.0.7

  • First official release version.