在woocommerce中,我试图从单个产品页面上显示的相关产品中删除特定的产品类别。
我尝试使用woocommerce_get_related_product_cat_terms
中钩住的函数,过滤器钩子,就像some answer threads中那样,但似乎不再起作用。
如何从Woocommerce相关产品中排除特定产品类别?
答案 0 :(得分:1)
尝试使用以下钩子功能的woocommerce_related_products
钩子,从显示的相关产品中排除特定的产品类别:
add_filter( 'woocommerce_related_products', 'exclude_product_category_from_related_products', 10, 3 );
function exclude_product_category_from_related_products( $related_posts, $product_id, $args ){
// HERE define your product category slug
$term_slug = 'hoodies';
// Get the product Ids in the defined product category
$exclude_ids = wc_get_products( array(
'status' => 'publish',
'limit' => -1,
'category' => array($term_slug),
'return' => 'ids',
) );
return array_diff( $related_posts, $exclude_ids );
}
代码进入活动子主题(或活动主题)的function.php文件。
经过测试可以正常工作。