Search Exclude

Description

With this plugin you can exclude any page, post or whatever from the WordPress search results by checking off the corresponding checkbox on post/page edit page.
Supports quick and bulk edit.

On the plugin settings page you can also see the list of all the items that are hidden from search.

Presentation

QuadLayers | Community

Screenshots

  • screenshot-1.png
  • screenshot-2.png

Installation

  1. Upload search-exclude directory to the /wp-content/plugins/ directory
  2. Activate the plugin through the β€˜Plugins’ menu in WordPress
  3. Go to any post/page edit page and check off the checkbox Exclude from Search Results if you don’t want the post/page to be shown in the search results

FAQ

Does this plugin affect SEO?

No, it does not affect crawling and indexing by search engines.
The ONLY thing it does is hiding selected post/pages from your site search page. Not altering SEO indexing.

If you want posts/pages to be hidden from search engines you may add the following snippet to your functions.php:

function add_meta_for_search_excluded()
{
    global $post;
    if (false !== array_search($post->ID, get_option('sep_exclude', array()))) {
        echo '<meta name="robots" content="noindex,nofollow" />', "\n";
    }
}
add_action('wp_head', 'add_meta_for_search_excluded');

Note: already indexed pages will remain indexed for quite a while. In order to remove them from Google index, you may use Google Search Console (or similar tool for other engines).

Are there any hooks or actions available to customize plugin behaviour?

Yes.
There is an action searchexclude_hide_from_search.
You can pass any post/page/custom_post ids as an array in the first parameter.
The second parameter specifies state of visibility in search. Pass true if you want to hide posts/pages,
or false – if you want show them in the search results.

Example:
Let’s say you want β€œExclude from Search Results” checkbox to be checked off by default
for newly created posts, but not pages. In this case you can add following code
to your theme’s function.php:

add_filter('default_content', 'exclude_new_post_by_default', 10, 2);
function exclude_new_post_by_default($content, $post)
{
    if ('post' === $post->post_type) {
        do_action('searchexclude_hide_from_search', array($post->ID), true);
    }
}

Also there is a filter searchexclude_filter_search.
With this filter you can turn on/off search filtering dynamically.
Parameters:
$exclude – current search filtering state (specifies whether to filter search or not)
$query – current WP_Query object

By returning true or false you can turn search filtering respectively.

Example:
Let’s say you need to disable search filtering if searching by specific post_type.
In this case you could add following code to you functions.php:

add_filter('searchexclude_filter_search', 'filterForProducts', 10, 2);
function filterForProducts($exclude, $query)
{
    return $exclude && 'product' !== $query->get('post_type');
}

Reviews

❄️1️⃣ 13, 2025 2 replies
Works just as described. Needed only 1 click to set it up. Extremely useful. Thanks.
❄️1️⃣ 9, 2025 2 replies
The plugin works excellent for what I need and I never had a problem so far. Some weeks ago an update came with a bug and thanks to this I lost all my exclude settings. I contacted the customer support and I can only say the best. They reacted quick and we could solve the problem together. I wouldnΒ΄t hestitate to contact them again in the future if there is another problem.
❄️1️⃣ 8, 2025 2 replies
An upgrade of this plugin broke my site. Contacting support was easy and relatively fast. Support was able to log in to my staging site and determine the issue was tied to my theme, so it was a special case. It took them a couple of weeks to put out a fix, but when they did, they contacted me to let me know it was available. The plugin works again as expected. I appreciate the professionalism and the great plugin.
❄️1️⃣2️⃣ 19, 2024 2 replies
It’s really simple and efficient. No problems yet.
❄️1️⃣2️⃣ 17, 2024 2 replies
The perfect tool for when you find some of your internal pages are leaking out into the results!
Read all 161 reviews

Contributors & Developers

“Search Exclude” is open source software. The following people have contributed to this plugin.

Contributors

“Search Exclude” has been translated into 4 locales. Thank you to the translators for their contributions.

Translate “Search Exclude” into your language.

Interested in development?

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

Changelog

2.4.2

  • fix: update jetpack autoload

2.4.1

  • fix: php errors

2.4.0

  • fix: implement jetpack autoload

2.3.0

  • fix: php errors
  • fix: improve allowed screen logic
  • fix: scripts in custom post types
  • fix: advanced custom fields compatibility

2.2.0

  • fix: php errors

2.1.9

  • fix: php errors
  • fix: compatibility with classic editor

2.1.8

  • WordPress 6.7 compatibility

2.1.7

  • fix: WordPress 6.1.3 compatibility
  • fix: big queries
  • Remove notification

2.1.6

  • Refactor update

2.1.5

  • Refactor

2.1.4

  • WordPress compatibility

2.1.3

  • WordPress compatibility

2.1.2

  • WordPress compatibility

2.1.1

  • Packages update

2.1.0

  • WordPress compatibility

2.0.9

  • fix: PHP errors

2.0.8

  • Translation strings

2.0.7

  • WordPress compatibility

2.0.6

  • WordPress compatibility

2.0.5

  • Update portfolio link

2.0.4

  • WordPress compatibility

2.0.3

  • fix: strings translations

2.0.2

  • fix: strings translations

2.0.1

  • fix: strings translations

2.0.0

  • i18n implemented
  • Composer implemented
  • Autoload implemented
  • Rename files to fit WordPress Development rules
  • Rename classes to fit WordPress Development rules
  • Rename variables to fit WordPress Development rules

1.3.1

  • Author update.

1.3.0

  • fix: and rework bulk edit: The Bulk actions dropdown now offers hide/show actions.

1.2.7

  • This is a security release. All users are encouraged to upgrade.
  • fix: possible XSS vulnerability.

1.2.6

  • fix: compatibility with WordPress 5.5

1.2.5

  • Security release. More protection added.

1.2.4

  • Security release. All users are encouraged to update.
  • Added filter searchexclude_filter_permissions.

1.2.2

  • Added action searchexclude_hide_from_search
  • Added filter searchexclude_filter_search
  • Fixed Bulk actions for Firefox

1.2.1

  • Fixed bug when unable to save post on PHP <5.5 because of boolval() usage

1.2.0

  • Added quick and bulk edit support
  • Tested up to WP 4.1

1.1.0

  • Tested up to WP 4.0
  • Do not show Plugin on some service pages in Admin
  • Fixed conflict with bbPress
  • Fixed deprecation warning when DEBUG is on

1.0.6

  • Fixed search filtering for AJAX requests

1.0.5

  • Not excluding items from search results on admin interface

1.0.4

  • Fixed links on settings page with list of excluded items
  • Tested up to WP 3.9

1.0.3

  • Added support for excluding attachments from search results
  • Tested up to WP 3.8

1.0.2

  • Fixed: Conflict with Yoast WordPress SEO plugin

1.0.1

  • Fixed: PHP 5.2 compatibility

1.0

  • Initial release