Wordpress查询 - 获取帖子(2)类别

时间:2014-03-07 11:23:04

标签: php mysql wordpress

实际上,我所拥有的是:

CATEGORY1
-Subcat1
-Subcat2

CATEGORY2
-Subcat3
-Subcat4

Subcats当然是其父类别的子类别。

我需要的是获取属于 Subcat1 的CATEGORY1 '和'的帖子(意味着我需要两个条件都是真的)属于<的帖子强> CATEGORY2的任何Subcats 。

我尝试了这个,但是除非用户在分配帖子时同时勾选父类别和子类别,否则它不起作用:

$query = new WP_Query(array("post_type" => "XYZ", "category__and" => array(CATEGORY1->Subcat1,CATEGORY2), "posts_per_page"=>-1));

Sidenote:CATEGORY1-&gt; Subcat1是先前在代码中定义的变量,但我只是为了演示查询而以这种方式编写。数组的所有参数都是相应的ID。

3 个答案:

答案 0 :(得分:0)

WP_query将子类别视为自己的类别。因此,您可以轻松使用$query = new WP_Query( 'category_name=Subcat1,Subcat3,Subcat4' );

检查WP_query Categories parameters

答案 1 :(得分:0)

如果条件是要用这两个类别标记的帖子,则可以串联类别,而不是在参数var中列出它们。

'category_name'=>'新闻+精选'

代替

'category_name'=>'精选新闻'

这样,仅当两个类别均被选中时,结果才返回帖子。

答案 2 :(得分:0)

您可以在 WP_Query 中使用 + 代替 ,

WP_Query(array("category_name" => " Subcat1+CATEGORY2 "));