WP Post Popup


Turn any page / post / external page into a popup instantly!

Perfect for showing basic content pages without redirecting a user to the page.

See the plugin in action: https://demo.tastewp.com/wp-post-modal


  • Loads only the_content() field — excludes header/footer/sidebars/etc.
  • Optionally load custom fields using a custom page template See Documentation
  • Trigger popup on page load using a URL a parameter
  • A page can have multiple popup links
  • Scroll to a specified anchor once the popup opens
  • Show external pages in popup
  • Show only a specific section from an external page
  • Works with shortcodes and some plugins, including Contact Form 7, BuddyPress, Visual Composer
  • Dynamically change URL in address bar to that of the the popped up page
  • Toggle simple styling
  • Visual Editor button for easy popup link creation
  • Set a breakpoint below which the page will load normally instead of a popup

Useful Links

Zrzuty ekranu

  • How the modal looks with simple text page content
  • Style the popup within the WP Customizer
  • Available plugin settings
  • Easily insert popup link with custom button in Visual Editor


  1. Upload wp-post-modal.zip to the /wp-content/plugins/ directory and extract
  2. Activate the plugin through the „Plugins” menu in WordPress
  3. Add the class modal-link to open the href of that link into a modal window.

Najczęściej zadawane pytania

Where is the documentation?

See Documentation

Will these Popups be blocked by an Ad Blocker?

They will not because these aren’t „popups” in the sense of an Ad. The way this works is by creating a modal window which is a just a section of your page that is hidden until a click or some other action makes it visible.

Where does the content of the popup come from?

The content can come from any web page. If it is from a post or page (or any custom post type) from your site, it will
be the content that is in the WordPress editor (or from a custom template) . In other words, the popup will not show
your header, footer, nor sidebars. Just the primary content. If it is from another website, it will typically be the
core or main content on that page, but you define that.

You simply make a page or post with the content you want, as you always do.

How is the popup triggered?

See Documentation

Can I use anchor links?

Yes, you can add an anchor to the end of your URL (for internally linked pages) and the popup will scroll to the
position of the anchor.

Using a custom div ID

You can change the name of the default site-wide div ID to use in the plugin settings. Alternatively, you can change the div ID case-by-case by adding this attribute data-div="DIVID" to your modal links.

What if my External Page isn’t loading

If your external page isn’t working, then you can try using the iFrame method. With the iFrame method the entire external page will load. You will not be able to specify a specific div to load.

There are two ways to use the iframe method:

  1. Add the class iframe to your modal-link to selectively use the iframe method
  2. Turn on the iframe method in the plugin settings to make all external links use the iframe method

Can I change the look of trigger link?

Absolutely, any way you want. You can turn it into a button like this: <a class="modal-link" href="http://my-site/privacy-policy/"><button type="button">Our Privacy Policy</button></a> or make it an image.

How do I change the look of the popup it self? What settings are available?

See Documentation

Can I have multiple popups on one page?

Yes, you can have as many as you like.


I really like this little plugin. Does what I need it to do with enough customization capability. I use Elementor Pro as my builder and the Hello Elementor theme and I had no problems getting this to work as needed.
I really like using this plugin. Good job! Please can we just fix line 261 of code in wp-post-modal-public.js so that external iframe links work after adding the iframe class in the block editor. $(this).attr("href") +it should rather use the variable declared on line 227, so:postLink +
My gallery pages have complex rules, and it was a struggle to find a lightbox that didn't add to my complexity. This one works correctly with gutenberg blocks and with the if/then code snippets I'm utilizing. No baked-in CSS to fight with, either. Thank you!
Does not do its main job of popup of the exact post content when used in a post loop output (archive, slides, carousel etc). It keeps showing the content of the first post in the query. The above struckout review was before I managed to troubleshoot the issue. No help was forthcoming from the developer for free user. The issue got resolved by putting the modal class at a lower level. Changed the blog archive plugin to something which allowed setting class at the post level. The plugin used earlier allowed class assignment only at the parent (container) level.
Przeczytaj 108 recenzji

Kontrybutorzy i deweloperzy

„WP Post Popup” jest oprogramowaniem open source. Poniższe osoby miały wkład w rozwój wtyczki.


Rejestr zmian

5.7.3: WordPress 6.2 Support
5.7.2: WordPress 6.1 Support
5.7.1: Bug fix
5.7.0: Security fixes
3.6.3: Minor fix
3.6.2: Namespaced modal class
3.6.1: Fixed modal close in Firefox
3.6.0: Added plugin setting for custom modal link class
3.5.8: Bug fix
3.5.7: Bug fix
3.5.6: Bug fix
3.5.5: Bug fix
3.5.4: Made all links clickable in popup (images, h tags, etc.)
3.5.3: Updated how admin notices are dismissed
3.5.2: Minor bug fixes
3.5.1: Added redirection upon plugin activation
3.5.0: Enabled opening consecutive popups and minor bug fixes
3.4.2: Minor update to allow targeting of nested modal-links
3.4.1: Added aria label on modal wrapper
3.4.0: Added accessibility support for modal
3.3.1: Added plugin setting to disable native content wrapping
3.3.0: Added filter for changing default wrapping div id
3.2.6: Added data-div functionality for internal popups
3.2.5: Fix bug with popup being empty
3.2.4: Added setting for disabling body scrolling
3.2.3: Disabled popup for IE11
3.2.2: Fixed custom templates to work with URL parameter
3.2.1: Minor bug fix
3.2.0: Added setting for container ID, fixed minor JS bug, fixed bug with notifications
3.1.0: Added setting to toggle loading animation
3.0.1: Fix scrolling bug
3.0: Many improvements in plugin code
2.2: Add functionality to update URL in address bar
2.1.10: Allow preceding forward slash on anchor links, check if modal is open before running close modal function on window click
2.1.9: Refactor post with anchor functionality
2.1.8: Minor fix to move body to previously scrolled position after popup is closed
with port number
2.1.7: Changed slide down effect to fade in, prevented body scrolling when popup is open, recognize development URLs
2.1.6: Added support for anchor links and open with modal through URL
2.1.5: Add iframe method for loading more complicated external pages
2.1.4: Made Visual Editor button optional in plugin settings, improved error handling in ajax requests, refactor admin notice dismissal
2.1.3: Minor styling fixes
2.1.2: Close popup with esc key
2.1.1: Update remote admin notice functionality
2.1: Add legacy method with fallback, admin notices, remote notice, added support for buddypress profiles
2.0.5: Fix link when only slug is used
2.0.4: Works with all custom post types
2.0.3: Bug fix for if visual composer installed active
2.0.2: Minor styling fixes
2.0.1: AJAX method for loading external content
2.0: Version 2.0 contains new plugin settings, insert popup button in Visual Editor, refactored to using WP Rest API, and more!
1.4.2: Add click outside modal functionality
1.4.1: Bug fix
1.4: Add color overlay
1.0: Initial release