仅在Woocommerce中有产品库存时显示产品属性

时间:2018-08-27 07:54:49

标签: php wordpress woocommerce product stock

我为交货时间设置了Woocommerce属性,并使用以下命令在单个产品页面上显示它:

//Single Product
function product_attribute_delivery(){
    global $product;

    $taxonomy = 'pa_delivery';
    $value = $product->get_attribute( $taxonomy );

    if ( $value ) {
    $label = get_taxonomy( $taxonomy )->labels->singular_name;
    echo '<p>' . $label . ': ' . $value . '</p>';
    }
}

add_action( 'woocommerce_single_product_summary',  'product_attribute_delivery', 25 );

仅当产品有存货时才可以显示它吗?

1 个答案:

答案 0 :(得分:1)

可以使用WC_Product is_in_stock()方法:

add_action( 'woocommerce_single_product_summary', 'product_attribute_delivery', 25 );
function product_attribute_delivery(){
    global $product;

    $taxonomy = 'pa_delivery';
    $value = $product->get_attribute( $taxonomy );

    if ( $value && $product->is_in_stock() ) {
        $label = get_taxonomy( $taxonomy )->labels->singular_name;
        echo '<p>' . $label . ': ' . $value . '</p>';
    }
}

代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试和工作