Wordpress tax_query"和"操作员没有按预期运作

时间:2016-08-23 20:28:09

标签: php wordpress filtering custom-taxonomy

我的自定义帖子类型为图片,其中包含一个名为 image_tag 的自定义分类(它的分层类似于类别)。以下是可能使用的标记的一些示例:

Structure (id: 25)
- House (id: 56)
- Skyscraper
Nature
- Animal
- Plant (id: 41)

所以,我想通过选择多个标签以及"和"来深入了解图像。运营商。例如,使用植物住宅 s查找所有照片。

$query_args = array(
  'post_type' => 'image',
  'tax_query' => array(
    array(
      'taxonomy' => 'image_tag',
      'terms' => array(41, 56),    // IDs of "plant" and "house"
      'operator' => 'and',
    ),
  ),
);

工作正常,当我尝试包含父条款时问题就开始了,例如:

$query_args = array(
  'post_type' => 'image',
  'tax_query' => array(
    array(
      'taxonomy' => 'image_tag',
      'terms' => array(25, 41),    // IDs of "structure" and "plant"
      'operator' => 'and',
    ),
  ),
);

然后我没有结果。我猜这是因为我使用"和"运营商,Wordpress并不包括"结构"术语。有没有人知道如何才能让它发挥作用?

3 个答案:

答案 0 :(得分:2)

所以看起来应该是这样的:

(-5)*1*6

答案 1 :(得分:0)

更新:您忘了关闭条款'和'运营商'通过'像这样

$query_args = array(
  'post_type' => 'image',
  'tax_query' => array(
    array(
      'taxonomy' => 'image_tag',
      'field'    => 'term_id',
      'terms' => array(25, 41),    // IDs of "structure" and "plant"
      'operator' => 'in'
    ),
  ),
);

答案 2 :(得分:0)

$query_args = array(
 'post_type' => 'image',
 'tax_query' => array(
    'relation' => 'AND',
       array(
      'taxonomy' => 'image_tag',
      'field'    => 'term_id',
      'terms' => array(25, 41),    // IDs of "structure" and "plant"
      'operator' => 'in'
      ),
    ),
  );

我有类似的问题,试一试!