按分类多类别查询自定义帖子

时间:2013-07-28 作者:Leonardo Girardi

我需要使用特定的分类法类别查询帖子,但要使用分类法的多个类别,就像我可以使用帖子类别一样。。

例如,我有Portfolio 自定义帖子,以及Project Type 组织(与类别相同);所以,我们有Animation, draw, icons and painting 项目类型。我需要创建一个循环来查询animations and painting 仅限类型(查询多个组合类型的king)。

我认为tax\\u查询可以做到这一点,但这个tax\\u查询只选择animations and paintings at the same time

我的上一个代码是:

$args[\'tax_query\'] = array(
 array(
\'taxonomy\'  => \'project-type\',
\'field\'  => \'id\',
\'terms\'  => array(1,2) // don\'t work as I need, it\'s a exclusion)
)
提前感谢您!

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

这应该给你一个OR 关系:

$args[\'tax_query\'] = array(
  array(
    \'taxonomy\'  => \'category\',
    \'field\'  => \'id\',
    \'terms\'  => array(1,2),
    \'operator\' => \'IN\'
  )
);
就像这样:

$args[\'tax_query\'] = array(
  \'relation\' => \'OR\',
  array(
    \'taxonomy\'  => \'project-type\',
    \'field\'  => \'id\',
    \'terms\'  => array(1)
  ),
  array(
    \'taxonomy\'  => \'project-type\',
    \'field\'  => \'id\',
    \'terms\'  => array(2)
  )
);
请注意,随着您添加更多条款,这将变得越来越低效。它的性能应该可以接受,只有两个。第一个版本更整洁,通常性能可能更好,除非您需要按多种分类法进行搜索。

结束

相关推荐

使用带有TAX_QUERY参数集的GET_POSTS()不适用于附件

我正在从事一个项目,该项目需要使用给定的分类法slug对搜索附件(在本例中,category=javascript). 我正在使用get_posts() 具有tax_query 设定要实现这一点,但它正在返回零收益。传递给get\\u posts()的数组如下:array(8) { [\"tax_query\"]=> array(1) { [0]=> array(3) { [\"taxonomy\"]=>