【发布时间】:2021-09-11 17:29:12
【问题描述】:
我正在尝试排除或删除“自定义”产品类别,它在商店页面上也可以正常工作,在主页中,当我尝试从简码中排除时,该类别的产品没有显示,而是在另一个简码中,同一页面(主页)当我尝试在另一个容器中仅显示另一个类别的产品时它给我带来了一些问题它不起作用它向我显示来自“NEWEST”的所有产品,不仅来自我过滤的特定类别,可以有人帮我解决它吗? 谢谢
add_action( 'woocommerce_shortcode_products_query' , 'exclude_cat_shortcodes');
function exclude_cat_shortcodes($query_args){
$query_args['tax_query'] = array(array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => 'custom', // slug category that I want to exclude
'operator' => 'NOT IN'
));
return $query_args;
}
【问题讨论】:
-
当使用
NOT IN/IN操作符时,terms应该是一个数组。而不是'terms' => 'custom'写'terms' => ['custom'] -
非常感谢您的评论,我按照您说的尝试过,但不幸的是没有工作,同样的问题!
-
分类是
product_cat还是别的什么? -
是的,代码可以正常工作,但不能正常工作,当我想展示另一个类别的产品时,让我们在带有短代码的容器上说“夏季销售”类别,它不工作它不t 显示与该类别相关的产品(“夏季销售”),但它向我显示了按最新排序的所有类别的所有产品,当我删除这部分代码时,我试图显示的短代码,例如“夏季销售”,工作完美?,!
-
哦,好吧。发生这种情况是因为您覆盖了 tax_query 属性,使用代码创建了一个答案
标签: php wordpress woocommerce hook