Do you want to learn how to exclude pages from the WordPress search results?
By default, the built-in WordPress search will include all posts and pages in its search results. To make it easier for visitors to find what they’re looking for, you may want to exclude certain content, so it never appears in those results.
In this article, we’ll show you how to exclude certain pages from the WordPress search results, step-by-step.
Why Exclude Pages from WordPress Search Results?
The default WordPress search includes all your posts and pages in its search results.
However, this may not work well for all websites. For example, if you’re running an online store, then you may want to hide pages like your account page, checkout page, thank you page, and more.
Similarly, if you run membership websites or sell online courses, then you’ll want to stop subscriber-only content from appearing in public search results.
With that said, let’s show you how to exclude pages from the WordPress search results.
Note: In this guide we’re focusing on on-site search, where a visitor uses your website’s search box to look through your content. If you want to exclude pages from Google search results, then you should see our guide on how to hide a WordPress page from Google.
Create a New WordPress Search Algorithm with a WordPress Plugin
The easiest way to exclude pages from the WordPress search results is by using the SearchWP plugin. It’s the best search plugin for WordPress used by over 30,000 websites.
With SearchWP, you can search content that WordPress ignores by default, including custom post types, PDF files, WooCommerce products, and categories. You can also exclude content.
First thing you need to do is install and activate the plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.
Upon activation, go to SearchWP » Settings and then click on the ‘General’ tab.
Here, you need to enter your license in the ‘License Key’ box. You can find this information under your account on the SearchWP site. Once you are done, make sure to click the ‘Verify Key’ button.
Create a Custom Search Algorithm
After activating the plugin, you can fine-tune how SearchWP indexes, searches, and displays your content. You can think of this as creating a custom Google search algorithm that’s just for your WordPress blog or website.
You’ll need to create a sitewide search engine before you can start excluding pages from the search results, so head over to SearchWP » Algorithm.
Here, you’ll see a section for the different content types that SearchWP searches by default, such as pages, posts, and media files.
Each section has its own Application Attribute Relevance sliders, which allows you to control how SearchWP ranks the content on your online marketplace, blog, or website.
For example, if you move the ‘Title’ slider to the left and the ‘Content’ slider to the right, then the content will carry more weight than the title.
You can either exclude all pages from the search results, or exclude specific pages only.
To stop all pages from appearing in your WordPress website search results, click on the small trash icon next to ‘Pages.’
This opens a popup where you can uncheck the ‘Pages’ box.
After that, simply click on ‘Done’ to exclude all pages from the search bar and results.
When you’ve finished customizing the default search engine settings, it’s time to save your changes. Even if you plan to exclude specific pages, you’ll still need to save your new sitewide search algorithm first.
To do this, scroll to the top of the screen and click the ‘Save’ button.
SearchWP will now rebuild the index automatically. Depending on the speed of your Internet connection and your WordPress hosting provider, this may take a few minutes.
As soon as you see ‘Index Status 100%,’ you’ll know that SearchWP has indexed all your content and settings.
Your site will now start using the improved WordPress search automatically.
Exclude Specific Pages From the WordPress Search Results
Do you want to exclude specific pages from the search results, such as the WooCommerce checkout page?
After creating a sitewide search algorithm following the process described above, you can exclude individual pages from the search results.
To do this, you’ll use the Exclude UI extension, which adds an ‘Exclude from search’ box to the page editor.
In the WordPress dashboard, head over to SearchWP » Extensions. Here, find the Exclude UI extension and click on its ‘Install’ button.
After that, open the page that you want to exclude from the search results. In the right-hand menu, make sure the ‘Page’ tab is selected.
You can now go ahead and check the ‘Exclude from search’ box.
Then simply click the ‘Update’ button, and this page will no longer appear in the search results. If you want to hide more pages from the search results, then simply follow the process described above.
How to Exclude Page Categories from WordPress Search Results
Another option is to exclude specific page categories from the search results. To do this, you’ll need a clear system for categorizing your pages, which may take some planning. However, you won’t need to install any extra extensions.
To show the pages from specific categories only, please see our guide on how to search by category in WordPress.
We hope this article helped you learn how to exclude pages from the WordPress search results. You may also want to see our beginner’s guide on how to get a free SSL certificate for your website and our best business phone services for small businesses.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Gabriel says
Thanks a lot! Seems to work perfectly.
WPBeginner Support says
Glad our guide was helpful
Admin
joel araujo says
just what I needed, at the right time
thanks
WPBeginner Support says
Glad our guide could help
Admin
Ivan says
Thanks. This worked for me. I wanted to exclude gallery appears in search results and this code does exactly what I need. Thanks
Pete says
This is really basic. It would be nice to see how to exclude only particular page templates, or blog categories.
VishvjeetCheema says
You are true life savers. always.
Gautam Nagraj says
Hello team WPBeginner
I am facing a new problem
when I have tested crawled pages on Google by writing
site:example.com
Then it showing pages & posts properly but also showing pagination links
example.com/page/2/
Like this
So how can I avoid this?
Please help me.
Joni says
Thanks! :)!
Laura Rafferty says
Wondering if there’s a way to target different search forms with this technique. I’d like the main website search form to target pages only; and the blog search form to target posts only.
Val says
I have some pages that are password protected (via main WP option to password protect a page) but they are still showing up in WP search with the excerpts. My understanding is that by default, the excerpts should not appear, you should see “There is no excerpt because this is a protected post.” I can use the Simply Exclude plugin but I’m wondering why the excerpts are showing up in the first place and I’d rather not add another plugin if I don’t have to.
deny jackrose says
Thank you very much sir.. this post really help me.. you rock man .. !!
Victor says
Thank you very much. You guys did the trick. I was looking for this and couldn’t find it anywhere else.
Nice job, guys.
Noah says
When someone just hits SEARCH with the criteria being ‘blank’, ALL pages show up in the results. How can I have NO results show in this situation?
Jornes says
Noah, if you are saying about search result, you can validate the search form using javascript. So that people are forced to key in the words before do the searches.
Samsir Alam says
Thanks bro.
WPBeginner Staff says
Glad to hear. You are welcome.
Dimitra says
Thank you so much for the article and some comments with codes that helped me a lot!
Bijay Pakhrin says
Worked perfectly, Thanks alot
redimin says
Work Fine !
Bruno says
Thanks bro! Your code helped me a lot.
Henry says
This worked much better than passing a hidden field (which is what I’ve been doing).
Laura says
This worked great, thanks! How can I include WordPress Native BBPress forum topics in the search results?
Thanks,
L
WPBeginner Support says
You can try bbpress search plugin.
Admin
Jornes says
Hi! I would like to ask how do i exclude the specified pages i wanted to excluded from searches? And how do i know what is the ID of the page? Can someone tell a solution? I wanted to excluded some pages which are useless to visitors.
Thank you!
hamza says
works for me. thank you!
Spyridon says
You are a real life saver. I tried codes from WordPress forum but didn’t work out. Yours is working for me!
luckyankit says
Well just wanted to say thank you for this… wonderful article
gormanIT says
Can you alter this function to exclude specific pages/posts from search? Ive been searching for this functionality and havent found anything.
David Allred says
Perfect! I was expecting it to be a bit more complex than that. Thanks a ton!
Michael Bailey says
Thank you so much. This was super helpful, fixing my problem with the speed of a cut and a paste (and a test)..
Success in all your ways!
Michael.
Katie says
Well, that’s almost perfect. I searched and found that many site’s offering us to hardcode the category ids to search id but this is cool. One question, i have to do the pagination myself so when i add this filter i won’t get offset issues .. right?
Editorial Staff says
No, you should not have offset issues.
Admin
Mohsen says
Hi
may I put your tutorials in my blog with a link to wpbeginner.com? my blog is in Farsi and I think many persian users need these tips.
thanks a lot
Editorial Staff says
No you may not translate any of our tutorials entirely. You may write a summary and then link to our site.
Admin
Rilwis says
This hack excludes not only pages from search results, but also other custom post types. So if we have many custom post types in our WP site, we can put them in the statement like this:
$query->set(‘post_type’, array(‘post’, ‘custom-post-type’));
Rein says
Thanks Rilwis, just what i needed!