我找到了一个可以在 WooCommerce 产品简短描述下方添加短代码的代码:
add_filter('woocommerce_short_description','ts_add_text_short_descr');
function ts_add_text_short_descr($description){
$text = do_shortcode('[my-shortcode]');
return $description . $text;
}
然后我尝试将该短代码添加到简短描述中,前提是产品具有特定的产品标签:
add_filter('woocommerce_short_description', 'ts_add_text_short_descr');
function ts_add_text_short_descr($description) {
global $product;
// Check if the product has a "VIP" tag
$product_tags = wp_get_post_terms($product->get_id(), 'product_tag');
$has_vip_tag = false;
foreach ($product_tags as $tag) {
if ($tag->slug === 'vip') {
$has_vip_tag = true;
break;
}
}
// If the product has the tag "VIP", add the shortcode
if ($has_vip_tag) {
$text = do_shortcode('[my-shortcode]');
return $description . $text;
} else {
return $description;
}
}
但是好像没啥作用。还有其他办法吗?
has_term()
条件函数来简化代码,以检查产品是否具有特定的产品标签,例如:
add_filter('woocommerce_short_description','ts_add_text_short_descr');
function ts_add_text_short_descr($description){
global $post;
if ( has_term( 'vip', 'product_tag' ) ) {
return $description . do_shortcode('[my-shortcode]');
}
return $description;
}
应该可以。