首页 > 解决方案 > 在 Woocommerce 中的产品描述后显示自定义字段

问题描述

add_action( 'woocommerce_product_description_tab', 'aq_display_disclaimer', 40, 9);

function aq_display_disclaimer() {
  echo '<b>Disclaimer:</b> ' . get_field('product_disclaimer');
}

我试图在前端显示一个所见即所得的字段,但由于某种原因它没有显示。我还尝试使用 product_summary 以及 the_content 之前和之后的其他功能,效果很好。

任何帮助将不胜感激。艾哈迈德 Q。

标签: phpwordpresswoocommerceproductadvanced-custom-fields

解决方案


不是一个钩子,而是一个作为产品描述选项卡回调触发的函数。 它加载模板,你不能用它来添加你的产品免责声明。woocommerce_product_description_tab
single-product/tabs/description.php

现在模板single-product/tabs/description.php使用the_content()Wordpress 功能来显示产品描述,您可以使用the_content过滤器钩子在其后添加免责声明:

add_filter( 'the_content', 'display_disclaimer_after_product_description', 10, 1 );
function display_disclaimer_after_product_description( $content ){
    // Only for single product pages
    if( ! is_product() ) return $content;

    if( $product_disclaimer = get_field( 'product_disclaimer', get_the_id() ) )
        return $content . '<b>Disclaimer:</b> ' . $product_disclaimer;

    return $content;
}

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

在此处输入图像描述


如果您想用该免责声明替换产品描述,您将替换此行:

return $content . '<b>Disclaimer:</b> ' . $product_disclaimer;

通过以下一个:

return '<b>Disclaimer:</b> ' . $product_disclaimer;

推荐阅读