Posted on

Using AND and OR for Boolean operators

Relevanssi Premium has support for in-query Boolean operators. Relevanssi uses + and – for the operators: cats -dogs and cats +kittens.

If you prefer instead to use the verbal AND and OR operators, it only takes one small function in your theme functions.php:

add_filter('relevanssi_search_filters', 'rlv_boolean_operators');
function rlv_boolean_operators($args) {
	$args['q'] = str_replace(' and ', ' +', $args['q']);
	$args['q'] = str_replace(' not ', ' -', $args['q']);
	return $args;
}

This function looks at the search query and replaces the word AND with a + sign and word NOT with a – sign. A search query can now say cats NOT dogs, and that gets interpreted as cats -dogs, which Relevanssi understands.

Leave a Reply

Your email address will not be published. Required fields are marked *