要使第一个代码块用于辅助查询,您需要:
function customize_customtaxonomy_query ( $query ) {
$query->set(\'post_type\', array(\'business\') );
// return $query; // not necessary; actions do not return anything
}
add_action( \'pre_get_posts\', \'customize_customtaxonomy_query\' );
$q = new WP_Query($args);
之后应该将其移除,以免干扰其他循环。
要使该筛选器在主查询上工作,需要在主查询运行之前应用它,这意味着(通常)它需要在functions.php
或插件文件。
然而,如果您正在创建一个二次循环(无法判断是否是),那么过滤器看起来像是杀伤力过大。只需传递您想要的参数。未经测试,但类似于此:
$args = array_merge( $wp_query->query_vars, array( \'post_type\' => \'business\' ) );
$q = new WP_Query( $args );
这是很多猜测,但我希望能有所帮助。