searchwp\query\mods
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.
Parameters
| Type | Parameter | Default | Since |
|---|---|---|---|
| \SearchWP\Mod[] | $mods |
[] |
4.0.0 |
| \SearchWP\Query | $query |
The Query being run | 4.0.0 |
Examples
All hooks should be added to your custom SearchWP Customizations Plugin.
Build Mod to exclude Post ID 145 and Post ID 211
| <?php | |
| 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. |

