【发布时间】:2016-12-30 19:27:36
【问题描述】:
我有一个自定义的 image 帖子类型,其中包含一个名为 image_tag 的自定义分类(它类似于类别的层次结构)。以下是一些可能使用的标签示例:
Structure (id: 25)
- House (id: 56)
- Skyscraper
Nature
- Animal
- Plant (id: 41)
所以,我想通过选择多个标签以及“and”运算符来深入了解图像。例如,查找所有带有植物s和houses的照片。
$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 不包括“结构”术语的子项。有谁知道我怎样才能让它工作?
【问题讨论】:
-
两个小问题:1) 确定。你能 100% 确认有帖子应该退回吗? 2)您是否尝试过将
include_children明确设置为true?我相信至少曾经有一个错误需要您这样做(尽管它通常是默认设置)。 -
Ok: 1) 是的,有些帖子同时标记了这两个术语(或它们的子项),2) 是的,我也尝试过
include_children,遗憾的是似乎没有任何效果。 -
很高兴知道。我的下一个猜测是下面@hubert-popp 的回答。我会试试的。
-
是的,@hubert-popp 的解决方案确实返回了正确的结果。从同一个分类法中有多个查询很奇怪,但如果它有效,它就有效。 :) 感谢您的宝贵时间!
标签: php wordpress filtering custom-taxonomy