Unlist Posts & Pages


Unlisted means your post/page will not come up in search results or on anywhere else on your site. Only those who have the link of the post can view it just like any normal post on the site.

The Post could still be seen by anyone, but only if they guess the link!

The plugin updates MySQL query directly in WP_Query class of WordPress to leave out the posts which are unlisted by the user. As this modifies the core WP_Query, this also works very well with all the plugins which pull out posts/pages from database by using WP_Query, For eg. Posts slider plugins, Advanced Posts in Ultimate Addon for Beaver Builder etc.

Try it out on a free dummy site

Supported & Actively Developed

Need help with something? Have an issue to report? Get in touch. with us on GitHub.

Limitations Of the Plugin

  • WP_Query has an a flag to ‘Suppress’ the filters. If any plugin is using this flag when querying the posts then the unlisted post will not be hidden in that plugin’s output.
  • Similarly if any plugin is using a custom MySQL query, then the unlisted posts will not be hidden from it’s output.


  1. Go to the Plugins menu and click Add New.
  2. Search for Unlist Posts.
  3. Click Install Now next to the Unlist Posts plugin.
  4. Activate the plugin.

Just select option «Unlist Post» in any post of any type and that post will be hidden from the whole site, it can be only accessed if you have the direct link to the post.


10 de octubre de 2019 1 reply
Great, simple, small plugin, works as described. great for magazine sites where you need to send the link to the client where article preview can be made without logging into WordPress
26 de abril de 2019 1 reply
This does exactly what it says it does. Down at the bottom of the document settings there is a checkbox «Unlist this post?» Easy
Read all 11 reviews

Contributors & Developers

“Unlist Posts & Pages” is open source software. The following people have contributed to this plugin.


“Unlist Posts & Pages” has been translated into 6 locales. Thank you to the translators for their contributions.

Translate “Unlist Posts & Pages” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Improvement: Comments for unlisted posts were hidden, These should be displayed now.
  • Improvement: Make sure robots tag is noindex for unlisted posts when Rank Math plugin is active.


  • Improvement: Updated the description of the plugin (props @NekoJonez)


  • Fix: Support translations on translate.wordpress.org.


  • Fix: Unlisted post visible in preview/next post links.


  • Fix: Compatibility with Yoast SEO’s robots tags options. Robots tags from Unlist Posts will override tag changes from Yoast SEO.


  • Fix: Due to a bug unlisted posts were visible in the search results, which we have fixed now.


  • Deprecated: wp_no_robots() has been deprecated.
  • Security: Use escaping for displaying unlist post description.


  • Fix: Post metabox did not show the correct status if the post is unlisted or not in the classic editor.


  • Improvement: Added the WordPress 5.6 compatibilty.


  • New: Add post status filter to make it easier to find out the unlisted posts. (Props @matthewmcvickar #40)
  • Fix: Don’t save post status for the revision posts.


  • Fix: unlist posts does not work in Ajax callbacks. (props @makovetskiy)


  • Fix: duplicate post ids being saved in the options array.


  • New – Exclude the posts from wp_list_pages()


  • New – Hide a page from search engines if it is unlisted.
  • New – Hide the post from comments query if it is unlisted.
  • Updated code architecture to be PHPCS compatible.


  • Initial Release.