Improved Include Page


Improved Include Page (IIP) uses the WordPress Shortcode API to include the content of any page inside any other page or post.

Using a shortcode in a post/page:

[include-page id=”123″] OR [include-page id=”/about/resume”]

Using PHP in a template

For more details and examples, see the Installation tab.

Improved Include Page is an enhanced version of the original Include Page developed by Brent Loertscher.

Key Features

  • Page title can be displayed with optional HTML code
  • Content can be displayed with different styles (full, teaser, custom ‘more’ link)
  • WordPress filters are applied to both the content and the title
  • Supports the WordPress Shortcode API


Can I include pages using custom fields?

Yes, but there’s an extra bit of code you need. To include a page, you now need to use this syntax:

echo do_shortcode( get_post_meta( get_the_id(), ‘custom_field_key’, true ) );



  • Confirming plugin works with WP 4.4 using both shortcode and template code.
  • Bumping WordPress requirement to 4.0.
  • Updates to description, documentation and tags.
  • PHP code formatting tweaks.
  • Support and development transferred from Vito Tardia to Marios Alexandrou.


  • Added the ‘#more-‘ in the “read more” link href, to avoid going to the top of the post when clicking (by Matthieu Sarter),
  • Added support for the WordPress ” tag, so that the more link text can be defined at the post level (it can still be overriden at the ‘iinclude_page()/[include]’ level) (by Matthieu Sarter).


  • Fixed static method definitions
  • Fixed: returns false if a page is not found, without triggering a notice


  • Fixed bug which broke the ID style inclusion on WP 3.0 (thanks to Mike Woods, Brad Lauster and wptk)
  • Fixed a bug on the ‘more’ link which caused too many slashes when using images as ‘more tags’ (thanks to Nikhil Dabas)

    Note: if you use HTML code in the ‘more’ link use single quotes for the ‘more’ parameter, like this:

    ‘[include-page id=”mypage” more=”]’

    or you will have a PHP Warning

  • Fixed a bug in the displayTitle attribute: using “false” you will get a real boolean false and title is hidden

  • Added a new WP action ‘include-page’ to use inside your PHP code

  • Edited class attribute for the ‘more’ link. Now it is ‘more-link’ and ‘iip-more-link’


  • On WP 2.5 or greater allows custom inclusion by post type and status using parameters ‘allowType’ and ‘allowStatus’.
  • Bug fix: in shortcode fixed a bug that could crash PHP when including recursive page/posts


  • Bug fixed: since this version you can include only static pages with status of ‘published’.


  • Page ID can be a valid page path (WP 2.1 or higher required) with contribution by Guy Leech.

= 0.4.4
* Added parameter $return (default = false) to iinclude_page() function
* Added support for WP 2.5.x shortcode API


  • The code of this version it’s been cleaned and optimized using WordPress API.


  • This version fixes a bug that triggers an error when used with some content filter: the ‘$page’ global variable is backed up and then restored before returning.


Contributors & Developers

This is open source software. The following people have contributed to this plugin.


Browse the code