Functions.php中的Woocommerce条件标签

时间:2015-04-07 19:38:23

标签: 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_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);

1 个答案:

答案 0 :(得分:0)

条件is_product_category用于检查您正在查看的页面是否是产品类别页面,并且单个产品页面上使用了操作woocommerce_single_product_summary。所以情况总会失败。

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

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

然后您可以申请条件。