我想根据具体查询帖子category_parent id
。这被用作用户根据父类别类型过滤帖子的过滤功能。我有多个类别,他们有多个子类别。例如,Fruits 是父类,那么子类可以是红色、蓝色、橙色。蔬菜是一个父类,它还有红色、蓝色和橙色的子类。我希望用户过滤并查看所有蔬菜子类别或所有水果子类别。
在我的情况下,我使用的是类别 ID 而不是 slug。例如,我想查询所有父类别为 17 和 19 的帖子。(虚拟)。
add_action( 'pre_get_posts', 'additional_query', 1, 1);
function additional_query( $query ){
$tax_query = array(
array(
"taxonomy" => "category",
"field" => 'term_id',
"terms" => array(17, 19)
)
);
$query->set( "tax_query", $tax_query );
}
但是,当我这样做时get_categories()
,返回的帖子仍然包含父级不是 17 和 19 的其他类别。我应该如何解决这个问题?谢谢。