This post may contain affiliate links. Please read my disclosure for more info.
In this article, I’ll demonstrate advanced techniques to hide posts or pages in WordPress from the main blogroll, home page, archive pages, search results, and RSS feeds without a dedicated third-party plugin.
Why Hide Posts or Pages in WordPress?
There are numerous reasons why you would want to hide posts or pages from specific areas of your WordPress site. For instance, I have individual pages that should never show up in the search results of the internal search function of WordPress. Examples of such pages include the “Thank You” or “Confirmation” pages of newsletter subscription and other forms.
Additionally, I don’t want sponsored posts to clutter up my blogroll or RSS feed, and thus, I’d like to hide them in those areas.
Available Methods to Hide Posts or Pages
While searching for a solution that could help me achieve my goals, I stumbled across a few different methods to hide posts in WordPress.
Unfortunately, none of the popular solutions worked for me. For the sake of completeness, I’ll briefly mention them in this article anyway, before showing you what has worked best for me.
When you publish a post or page in WordPress, its visibility, by default is set to Public. But you can change the visibility setting to Private, which renders the post or page inaccessible to everyone but logged in users. While this is a useful setting for specific occasions, it does not solve the problem of hiding individual blog posts or pages in only some areas of your WordPress site.