向 WooCommerce 商店循环产品标题添加自定义属性

Adding custom attribute to WooCommerce shop loop product title

我正在尝试向 WooCommerce 循环添加自定义属性。目前我的函数文件中有以下内容

function cc_template_loop_product_custom_attribute()
{
    $abv = $product->get_attribute('pa_alcohol-by-volume');
    if (!empty($abv))
    {
        echo get_attribute('pa_alcohol-by-volume');
    };
}

add_action('woocommerce_shop_loop_item_title', 'cc_template_loop_product_title', 10);

目的是在产品标题后显示属性'Alcohol by volume'。然而,这是行不通的,基本上导致循环在到达函数后立即停止渲染。

直接调用get_attribute()会抛出类似

的错误

Call to undefined function get_attribute()

所以这样用

add_action('woocommerce_shop_loop_item_title', 'wh_insertAfterShopProductTitle', 15);

function wh_insertAfterShopProductTitle()
{
    global $product;

    $abv = $product->get_attribute('pa_alcohol-by-volume');
    if (empty($abv))
        return;
    echo __($abv, 'woocommerce');
}

代码进入您的活动子主题(或主题)的 functions.php 文件。或者在任何插件 php 文件中。
代码已经过测试并且可以工作。

希望对您有所帮助!