您应该可以通过pre_get_posts
过滤器,在执行实际查询之前运行。
add_filter( \'pre_get_posts\', \'wpse168169\' );
function wpse168169( $query ) {
if ( ( ! is_admin() ) && ( $query->is_main_query() ) && ( $query->is_search ) ) {
// modify $query here to suit your needs; unset( $query ) maybe?
}
return $query;
}