is_search) { // example query: // AND (((wp_posts.post_title LIKE '%word1%') OR (wp_posts.post_content LIKE '%word1%')) AND ((wp_posts.post_title LIKE '%word2%') OR (wp_posts.post_content LIKE '%word2%'))) AND (wp_posts.post_password = '') // want to change these ANDs into ORs // --------------------------------------------------------------------------------------^^^ $search = preg_replace('/(\\(\\([^\\)]+LIKE[^\\)]+\\)\\s+OR\\s+\\([^\\)]+LIKE[^\\)]+\\)\\))\\s+AND/', '$1 OR', $search); } return $search; } add_filter('posts_search', 'any_word_search_posts_search_filter', 10, 2);