首页 > 解决方案 > 如何为用户帐户添加使用 acf 创建的自定义字段以显示在 woocommerce 的结帐表单中

问题描述

我在用户帐户中使用 ACF 创建了一个自定义字段,显示有关付款方式的消息。我无法让它显示在结帐页面中。

我已将此代码添加到 checkout-form.php 但不起作用,它只显示“空”。“payment_method_message”是 ACF 中的字段名称。

<?php $value = get_field( "payment_method_message", $user );

echo $value;

?>

我想要的是在完成订单按钮之前显示此字段。先感谢您!

注意:我也尝试在 function.php 中添加它,但再也没有...

    add_action('woocommerce_after_order_note','display_acf_field_on_checkout'); 

    function display_acf_field_on_checkout()

    { echo '<b>Payment method message:</b>' . 
    get_field('payment_method_message',$user_id); 
    // Note: 'payment_method_message' is the slug of the ACF }

已解决:我用下面的代码想出了它,我把它放在 childtheme woocommerce 目录中的 payment.php 模板中。它运作良好。

<?php 

$value = get_field('payment_method_message',  
'user_'.get_current_user_id());

if( $value = get_field( 'payment_method_message',  
'user_'.get_current_user_id() ) ) { echo "<h3 style='margin:0;font- 
weight: 600;'>" . 'Payment Method: '  .  $value . '</h3>' ; }

?>

标签: woocommerceadvanced-custom-fields

解决方案


推荐阅读