【问题标题】:Wordpress Query - Get Posts In BOTH (2) CategoriesWordpress 查询 - 在两个 (2) 类别中获取帖子
【发布时间】:2014-03-07 11:23:03
【问题描述】:

其实我是这样的:

类别 1
-Subcat1
-Subcat2

类别 2
-Subcat3
-Subcat4

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

我需要的是获得属于 CATEGORY1 'AND'Subcat1 的帖子(意味着我需要两个条件都为真)属于 CATEGORY2 的任何 Subcats。

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

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

旁注:CATEGORY1->Subcat1 是之前在代码中定义的变量,但为了演示查询,我只是这样写。数组的所有参数都是对应的ID。

【问题讨论】:

  • 您可以指定多个类别,即'category' => 1,2,3,4的1,2,3,4
  • 不会返回属于这些类别的帖子吗?

标签: php mysql wordpress


【解决方案1】:

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

查看WP_query Categories parameters

【讨论】:

  • 是的,但这会给我那些子目录中的帖子,对吧?
  • 它会为您提供指定子类别中的帖子
【解决方案2】:

如果条件是要被两个类别标记的帖子,您可以连接类别而不是在参数 var 中列出它们。

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

而不是

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

这样,只有在检查两个类别的帖子时,结果才会返回帖子。

【讨论】:

    【解决方案3】:

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

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

    【讨论】:

      猜你喜欢
      • 2014-11-18
      • 2013-12-10
      • 1970-01-01
      • 2018-06-29
      • 1970-01-01
      • 2011-05-16
      • 1970-01-01
      • 2018-05-14
      • 1970-01-01
      相关资源
      最近更新 更多