Note: You are viewing the documentation for Version 3View Version 4 Docs

Documentation

View the installation guide, browse the Knowledge Base, find out about SearchWP's many hooks, get support

Available since: 2.9

searchwp_indexer_excluded_by_rules

View Parameters »

Note: Use of this hook will require a manual reindex

SearchWP will actively exclude content from the index if you use any Limit To or Exclude rules in your engine settings. Using this hook you can filter what’s been excluded by those rules during indexing (e.g. to allow excluded content to be indexed)

When is that useful?

It sounds counterintuitive to ignore engine rules when indexing (which will index content that’s ultimately excluded by engine rules anyway) but SearchWP allows for customizations that can make engine rules dynamic. There may be a case where you want content excluded in most but not all cases.

Example: let’s say you want to exclude a Category from search results for regular visitors, but allow logged-in visitors to see everything. You can set up your engine to Exclude the Category, but use this hook to make sure the indexer indexes everything by adding this to your theme’s functions.php:

<?php
// By default SearchWP will exclude content that's excluded by the engine configuration
// This hook filters what has been excluded (i.e. breaks the rules!)
//
// See example context at https://searchwp.com/docs/hooks/searchwp_indexer_excluded_by_rules/
add_filter( 'searchwp_indexer_excluded_by_rules', function( $excluded_ids ) {
// Always index everything
return array();
} );
view raw functions.php hosted with ❤ by GitHub

To finalize the implementation you would also need to ensure that the exclusion is not applied when searching as well, which can be done with this hook:

<?php
// Do not exclude anything if user is logged in
add_filter( 'searchwp_exclude', function( $excluded_ids, $engine, $terms ) {
return is_user_logged_in() ? array() : $excluded_ids;
}, 99, 3 );
view raw functions.php hosted with ❤ by GitHub

Parameters

Parameter Type Description
$excluded_ids Array

The IDs that will be excluded from the index based on engine rules

Fix keyword search on your site. No coding required!

Now you can utilize all of the content that's gone unrecognized by native WordPress keyword search instantly with SearchWP

Get SearchWP