WP从多个组合类别中获取所有帖子(高级)

时间:2016-09-01 11:30:50

标签: php wordpress

您好我想从多个类别组合中获取所有可用的帖子。

所以我的WP_Query Args就像

$args = array(
'category_name' => 'slug_1+slug_2,slug_1+slug3'
);

但这不起作用。

所以组合将是:在一个查询中从(cat1和cat2)或(cat1和cat3)获取所有帖子,因为我需要分页。

更新1

为了更具体,我有一个过滤器用于过滤他们拥有的类别 您可以选择多个类别。 这些帖子都有一个默认类别,分配为:职位空缺 并且在过滤器中我选择了另外/多个类别女巫也被分配到帖子。

所以:

$args1 = array(
    'category_name' => 'slug_1+slug_2'
);
// or
$args2 = array(
    'category_name' => 'slug_1+slug_3'
);
//final arg would be the two combined with and or separator ','
$args_final = array(
    'category_name' => '$args1,$args2'
);

如何使用一个wp_Query args实现这一点。 感谢。

2 个答案:

答案 0 :(得分:3)

$query = new WP_Query( array( 'category_name' => 'cat1,cat2' ) );
  

Wordpress Codex

<强>更新

我希望合并两个单独的WP查询结果将解决这个问题。尝试类似下面的内容

$query1 = new WP_Query(array( 'category_name' => 'slug_1+slug_2' ));
$query2 = new WP_Query(array( 'category_name' => 'slug_1+slug_3' ));

$getId = array_merge($query1->posts,$query2->posts);

$finalQuery = new WP_Query(array('post__in' => $getId));

答案 1 :(得分:0)

尝试按照以下方式进行WP查询:

$query = new WP_Query( 'category_name=staff,news' );

或使用类别ID进行查询:

$query = new WP_Query( 'cat=2,6,17,38' );

请查看以下链接,它必须为您提供帮助:http://codex.wordpress.org/Function_Reference/WP_Query#Category_Parameters