I
by Paul Ryan 4.8 (71 reviews)

Insert Pages

Insert Pages lets you embed any WordPress content (e.g., pages, posts, custom post types) into other WordPress content using the Shortcode API.

Insert Pages ranks #933 among WordPress.org plugins with 30,000+ active installations, is #152 of 8,684 in the Customization category, a 4.8/5 rating from 71 reviews, and was last updated Jun 20, 2026. Data from WordPress.org, refreshed twice daily — see methodology.

Tested up to WP 7.0.6 (Current: 7.1.2)
v3.11.5 Current Version v3.11.5
Updated 3 months ago Last Update on 20 Jun, 2026
Refreshed 9 hours ago Last Refreshed on
#152 of 8,684 in Customization Top 5% by installs Downloads -41.3% this week
View on WordPress.org
Rank
#933
— No change
Active Installs
30K+
-23.8%
KW Avg Position
20.8
0.2 better
Downloads
1.1M
+113 today
Support Resolved
0%
— No change
Rating
96%
Review 4.8 out of 5
4.8 (71 reviews)

Next Milestone 40K

Total Progress 89.1%
30K+ 40K+
20
Ranks to Climb
-
Growth Needed
8,000,000
Active Installs
Pro

Unlock Exact Install Count

See the precise estimated active installs for this plugin, calculated from real-time ranking data.

  • Exact install estimates within tiers
  • Track install growth over time
  • Milestone progress predictions
Upgrade to Pro
Need 1,093 more installs to reach 40K+

Rank Changes

884 908 932 956 980 29-09-2026 30-09-2026 01-10-2026 02-10-2026 03-10-2026 04-10-2026 05-10-2026 06-10-2026
882 906 931 955 979 21-09-2026 22-09-2026 23-09-2026 24-09-2026 25-09-2026 26-09-2026 27-09-2026 28-09-2026 29-09-2026 30-09-2026 01-10-2026 02-10-2026 03-10-2026 04-10-2026 05-10-2026 06-10-2026
Current #933
Change
Best #

Upgrade to Pro

Unlock 30-day and 90-day rank history charts with a Pro subscription.

Upgrade Now

Active Installs Growth

Active Installs 0,000,000+
Growth +0.0%
Peak 0,000,000

Downloads Growth

0 100 200 29-09-2026 30-09-2026 01-10-2026 02-10-2026 03-10-2026 04-10-2026 05-10-2026 06-10-2026
0 100 200 21-09-2026 22-09-2026 23-09-2026 24-09-2026 25-09-2026 26-09-2026 27-09-2026 28-09-2026 29-09-2026 30-09-2026 01-10-2026 02-10-2026 03-10-2026 04-10-2026 05-10-2026 06-10-2026
Downloads
Growth
Peak

Upgrade to Pro

Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.

Upgrade Now

Reviews & Ratings

4.8
71 reviews
Overall 96%
5
66 (93%)
4
0 (0%)
3
2 (3%)
2
0 (0%)
1
3 (4%)

Security History

Source: WPVulnerability

5 known vulnerabilities on record · 1 in the last 24 months · checked 1 day ago

  1. Insert Pages [insert-pages] < 3.11.5

    CVE-2026-10089 · Fixed in v3.11.5

  2. Insert Pages [insert-pages] < 3.7.5

    CVE-2022-4483 · Fixed in v3.7.5

  3. Insert Pages [insert-pages] < 3.7.0

    CVE-2021-24850 · Fixed in v3.7.0

  4. Insert Pages [insert-pages] < 3.7.0

    CVE-2021-24851 · Fixed in v3.7.0

  5. Insert Pages [insert-pages] < 3.2.4

    CVE-2017-18586 · Fixed in v3.2.4

TL;DR

AI summary of the plugin's readme

This plugin is for WordPress site owners and developers who reuse the same content, such as due dates or video details, across multiple pages or posts. It solves the problem of duplicated content by letting them insert a page, post, or custom post type into other content via a shortcode, so editing the original updates it everywhere it's inserted.

  • Insert pages via shortcode
  • Widget for inserting pages
  • Works with custom post types
  • Toolbar button for inserting pages
  • Custom display templates support
  • Content-only display option
  • Compatible with Custom Post Type UI
  • Compatible with Advanced Custom Fields

Frequently Asked Questions

Common questions about Insert Pages

A basic template would look like the following. This would be a file on your theme directory, e.g., your-custom-template.php: <?php /** * Template Name: Name of your custom template */ ?> <div id="your-wrapper-div"> <?php while ( have_posts() ) : the_post(); ?> <div id="your-container-div-for-each-post"> <?php the_content(); ?> <?php the_post_thumbnail(); ?> </div> <?php endwhile; ?> </div> You can use whatever template tags that you'd like, check out the WordPress documentation. https://developer.wordpress.org/themes/basics/template-tags/ https://developer.wordpress.org/themes/references/list-of-template-tags/
You can hook into the 'insert_pages_available_post_types' filter to limit the post types displayed in the dialog. Here's an example filter that just shows Posts: /** * Filter the list of post types to show in the insert pages dialog. * * @param $post_types Array of post type names to include in the insert pages list. */ function only_insert_posts( $post_types ) { return array( 'post' ); } add_filter( 'insert_pages_available_post_types', 'only_insert_posts' );
No! You can type out the shortcode yourself if you'd like, it's easy. Here's the format: [insert page='{slug}|{id}' display='title|link|content|all|{custom-template.php}'] Examples: [insert page='your-page-slug' display='link'] [insert page='your-page-slug' display='your-custom-template.php'] [insert page='123' display='all']
Just one! The plugin prevents you from embedding a page in itself, but you can totally create a loop that will prevent a page from rendering. Say on page A you embed page B, but on page B you also embed page A. As the plugin tries to render either page, it will keep going down the rabbit hole until your server runs out of memory. Future versions should have a way to prevent this behavior!

Sign In / Register

You need to sign in or register to use this feature.