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


Since: 4.0.0

Table of Contents

Customize the \SearchWP\Mods applied during a search.

Note: There are some internal \SearchWP\Mods that may be present for the query. This hook does not allow filtration of those mission critical \SearchWP\Mods, only user-defined \SearchWP\Mods.

See also searchwp\query\do_source_db_where for internals.


Type Parameter Default Since
\SearchWP\Mod[] $mods [] 4.0.0
\SearchWP\Query $query The Query being run 4.0.0


All hooks should be added to your custom SearchWP Customizations Plugin.

Build Mod to exclude Post ID 145 and Post ID 211

add_filter( 'searchwp\query\mods', function( $mods, $query ) {
// Retrieve Source name to use with Mod.
$source = \SearchWP\Utils::get_post_type_source_name( 'post' );
// Build Mod to exclude Post ID 145 and Post ID 211.
$mod = new \SearchWP\Mod( $source );
$mod->set_where( [ [
'column' => 'id',
'value' => [ 145, 211 ],
'compare' => 'NOT IN',
'type' => 'NUMERIC',
] ] );
$mods[] = $mod;
return $mods;
}, 20, 2 );
// Execute search for 'coffee' using Mod enqueued above.
$search = new \SearchWP\Query( 'coffee' );
$results = $search->results; // Array of results.

How to use this code

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