Woocommerce Functions.php中的条件标记

Woocommerce Functions.php中的条件标记,woocommerce,Woocommerce,当客户访问特定的产品类别时,我有以下代码来响应公告,但我无法让它工作: function gvi_announcement() { if ( is_product_category( 'accessories' ) ) { echo '<p class="my-alert"><span>This is an accessory</span></p>'; }; } add_action ('woocommerce_single_produ

当客户访问特定的产品类别时,我有以下代码来响应公告,但我无法让它工作:

function gvi_announcement() {
 if ( is_product_category( 'accessories' ) ) {
    echo '<p class="my-alert"><span>This is an accessory</span></p>';
 };
}
add_action ('woocommerce_single_product_summary', 'gvi_announcement' , 10);
功能gvi_公告(){
如果(是产品类别(“附件”)){
echo'

这是一个附件; }; } 增加行动(“商业单一产品摘要”、“gvi公告”,10);

它在没有条件标记的情况下工作得很好,但是我已经用尽了所有其他方法来使用条件使其工作

更新: 谢谢你的建议@Ibrahim,但我还是无法让它发挥作用。下面是我的代码:

function gvi_announcement() {
global $post;
$terms = get_the_terms( $post->ID, 'accessories' );
if ( $terms ) {
echo '<p class="my-alert"><span>This is an accessory</span></p>';
  };
}
add_action ('woocommerce_single_product_summary', 'gvi_announcement' , 10);
功能gvi_公告(){
全球$员额;
$terms=获取条款($post->ID,“附件”);
如果($条款){
echo'

这是一个附件; }; } 增加行动(“商业单一产品摘要”、“gvi公告”,10);


条件
为产品类别
用于检查您正在查看的页面是否为产品类别页面,并且在单个产品页面上使用操作
woocommerce\u single\u product\u summary
。因此,这种情况必然会失败

在单个产品页面中,您必须使用获取产品所属的产品类别。大概是这样的:

global $post;
$categories = get_the_terms( $post->ID, 'product_cat' );
然后,您可以应用您的条件