在每个挂钩和;过滤器处理程序,除了检查存档条件外,还检查自定义查询变量,然后可以为自定义/手动查询设置该变量。例如,您可能有:
function wpse_223991_pre_get_posts( $wp_query ) {
if ( $wp_query->is_main_query() && $wp_query->is_post_type_archive( \'my_post_type\' ) ) {
// Awesome custom stuff
}
}
add_action( \'pre_get_posts\', \'wpse_223991_pre_get_posts\' );
。。。将其更改为:
function wpse_223991_pre_get_posts( $wp_query ) {
if ( ! $do_it = $wp_query->is_main_query() && $wp_query->is_post_type_archive( \'my_post_type\' ) )
$do_it = $wp_query->get( \'custom_stuff_please\' );
if ( $do_it ) {
// Awesome custom stuff
}
}
add_action( \'pre_get_posts\', \'wpse_223991_pre_get_posts\' );
现在,除了运行主自定义帖子类型归档之外,您还可以在设置
custom_stuff_please
在自定义查询中:
$query = new WP_Query([ \'custom_stuff_please\' => true ]);