有没有人知道如何从WooCommerce产品页面的列表中隐藏一个特定的类别标签名称?
示例:产品1属于A,B,C类。 我不想在产品页面的标签列表中显示B类。只有A和C.
提前感谢您的帮助。
答案 0 :(得分:1)
在我的modifying the product query教程的基础上,并使用相应的WP_Query Parameters我认为您可以执行以下操作,以使用slug"类别-b&#排除产品类别中的所有产品34 ;.您需要根据需要调整slu ..未经测试。
add_action( 'woocommerce_product_query', 'so_31478197_product_query' );
function so_31478197_product_query( $q ){
$tax_query => array(
array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => 'category-b',
'operator' => 'NOT IN',
),
),
$q->set( 'tax_query', (array) $tax_query );
}
答案 1 :(得分:0)
谢谢你helgatheviking。 我手动编写了一个自定义函数。
我将其粘贴到此处,因此将来可能会有所帮助。
function hide_product_cat() {
global $post;
$terms = get_the_terms( $post->ID, 'product_cat' );
if(!empty($terms)){
echo "<span class='prod_categories'>" . _n( 'Category:', 'Categories:', count($terms), 'woocommerce' ) . " ";
foreach ($terms as $term) {
$woo_cat_id = $term->term_id; //category ID
$woo_cat_name = $term->name; //category name
$woo_cat_slug = $term->slug; //category slug
if($woo_cat_id != <MY_CATEGORY_ID_B> ){
$result .= '<a href="' . get_term_link( $woo_cat_slug, 'product_cat' ) . '" rel="tag">' . $woo_cat_name . '</a>, ';
}
}
$result = substr($result, 0, -2) . ".";
echo $result;
echo "</span>";
}
}