2015-04-07 30 views
0

我有以下代碼呼應,當客戶訪問一個特定產品類別的通知,但我不能得到它的工作:Woocommerce條件標籤中的functions.php

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); 

它工作正常,無有條件的標籤,但我已經用盡了所有其他方式來使用條件進行這項工作。

更新: 感謝您的建議@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); 

回答

0

條件is_product_category用於檢查,如果你正在查看的頁面是產品分類頁面或不和動作woocommerce_single_product_summary是單一的產品頁面上使用。所以病情總會失敗。

在單個產品頁面中,您必須使用get_the_terms來獲取產品所屬的產品類別。例如:

global $post; 
$categories = get_the_terms($post->ID, 'product_cat'); 

然後,您可以應用您的條件。