我在我的Wordpress安装中添加了一个新的post_type
,我想查询这些帖子并在循环中使用它们。
问题是我必须根据类别页面或标签页等手动构建参数。
有没有办法重用已经可用的全局WP_Query对象,修改参数post_type
并运行查询?
这是我想要避免的:
$query = array(
'post_type' => 'vehicle',
);
if( is_category() ){
$query['category_name'] = get_query_var('category_name')
}
if( is_category() ){
$query['category_name'] = get_query_var('category_name')
}
if( is_tag() ){
$query['tag'] = get_query_var('tag')
}
// ... and so on
$loop = new WP_Query($query);
我不想使用pre_get_posts
方法,因为这样做会改变全局查询,该查询用于网站的其余部分。
答案 0 :(得分:0)
我已经修好了这个:
$query = $wp_query->query_vars;
$query['post_type'] = 'vehicle';
$loop = new WP_Query($query);
我不知道这是否正确,但对我有用。