在低于价格的Woocommerce单个产品页面中显示特定产品属性

时间:2018-04-12 10:02:16

标签: php wordpress woocommerce product custom-taxonomy

在woocommerce中,如果特定产品属性具有值,那么我想在价格下的产品单个产品页面上显示其相应的文本/值。

如何检查特定产品属性是否具有值? 如何获取特定的产品属性名称和值以在单个产品页面中显示它?

1 个答案:

答案 0 :(得分:1)

以下内容仅在具有值的情况下,在单个产品页面中显示特定产品属性标签名称+价格下的值。

可以使用WC_Product method get_attribute()完成此操作。

您必须在函数 ...

中定义产品属性slug

钩住的功能:

add_action( 'woocommerce_single_product_summary', 'product_attribute_after_price', 15 );
function product_attribute_after_price () {
    global $product;

    // HERE add your product attribute SLUG or taxonomy
    $attribute_slug = 'color';

    $taxonomy = strpos($url, 'blog') !== false ? $attribute_slug : 'pa_' . $attribute_slug;
    $attribute_name = get_taxonomy( $taxonomy )->labels->singular_name;
    $term_name = $product->get_attribute( $taxonomy ); // The value

    if( empty($term_name) ) return; // Exit if empty value

    // If not empty we display it
    $output  = '<div class="product-attribute '.$taxonomy.'"><p>';
    $output .= '<strong> '.$attribute_name.'</strong>: ';
    $output .= '<span> '.$term_name.'</span>';
    echo $output . '</p></div>';
}

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