在 WooCommerce 挂钩中显示高级自定义字段 (ACF) 值

Displaying Advanced Custom Field (ACF) value in a WooCommerce hook

我想在 Woocommerce 中显示来自高级自定义字段 (ACF) 的值,我在这个函数中使用了这段代码:

add_action( 'woocommerce_single_product_summary', 'charting', 20 );

function charting() {
    if( get_field('size_chart') ) { 
       echo '<p><a href="'.the_field('size_chart').'" data-rel="prettyPhoto">size guide</a></p>';
    }
    return;
}

但它不起作用,它在 href(尺寸指南)上方显示自定义字段值并且 href 是空的,如下所示:

<a href="" data-rel="prettyPhoto">size guide</a>

您的问题是您不能在代码中以这种方式将 echo 与 ACF the_field('my_field') , because when using the_field('my_field') is just like using echo get_field('my_field'), so you are trying to echo an echo. Instead use get_field('my_field') 一起使用:

add_action( 'woocommerce_single_product_summary', 'charting', 20 );

function charting() {
    if( !empty( get_field('size_chart') ) ) { // if your custom field is not empty…
        echo '<p><a href="' . get_field('size_chart') . '" data-rel="prettyPhoto">size guide</a></p>';
    }
    return;
}

之后,我在你的条件下添加了empty()功能…

你也可以尝试 return 它而不是 echo:

    return '<p><a href="' . get_field('size_chart') . '" data-rel="prettyPhoto">size guide</a></p>';

参考:

我使用了这段代码,它在本地运行良好,但是当我在服务器上上传函数文件时,它不起作用,它给出了服务器错误 500,所以我不得不再次删除这段代码