在Woocommerce管理员,订单和电子邮件中显示自定义付款字段

我需要在管理订单页面,thank_you和电子邮件通知中显示我的自定义结帐字段。

我正在使用验证并在Woocommerce答案代码中为特定的支付网关保存其他结帐字段,以显示,验证和保存我的自定义字段。

Woocommerce显示有关管理订单详细信息的自定义字段数据,我试图显示保存了输入值的自定义字段。

这是我到目前为止的代码:

// Display field value on the order edit page
add_action( 'woocommerce_admin_order_data_after_billing_address', 
    'show_Ean_nummer_in_admin', 10, 1 );
    function show_Ean_nummer_in_admin ( $order ){
    // Get "ean" custom field value
    $udfyld_ean = get_post_meta( $order_id, '_udfyld_ean', true );

    // Display "ean" custom field value
    echo '<p>'.__('EAN', 'woocommerce') . $udfyld_ean . '</p>';
} 

// Display field value on the order emails  
add_action( 'woocommerce_email_order_details', 'ean_in_emails' 50, 1 );
function ean_in_emails( $order, $sent_to_admin, $plain_text, $email ){
      // Get "ean" custom field value
    $udfyld_ean = get_post_meta( $order_id, '_udfyld_ean', true );

    // Display "ean" custom field value
    echo '<p>'.__('EAN', 'woocommerce') . $udfyld_ean . '</p>';
}

// Display field value in thank you
add_action( 'woocommerce_thankyou', 'ean_in_thankyou' );
function ean_in_thankyou() {
    // Get "ean" custom field value
    $udfyld_ean = get_post_meta( $order_id, '_udfyld_ean', true );
    // Display "ean" custom field value
    echo '<p>'.__('EAN', 'woocommerce') . $udfyld_ean . '</p>';
}  

但这不起作用。该字段确实会附加到数据库,但不会显示在任何地方:

数据库中的元键

如何正确显示该字段?

LoicTheAztec

以下代码将在订单和电子邮件通知中显示您的“ Udfyld EAN”自定义字段值:

1)在Woocommerce订单管理单页中显示该信息:

// Display field value on the admin order edit page
add_action( 'woocommerce_admin_order_data_after_shipping_address', 'custom_field_admin_display_order_meta', 10, 1 );
function custom_field_admin_display_order_meta( $order ){
    $business_address = get_post_meta( $order->get_id(), 'Business Address?', true );
    if( $udfyld_ean = $order->get_meta('_udfyld_ean') )
        echo '<p><strong>'.__('Udfyld EAN', 'woocommerce').': </strong> ' . $udfyld_ean . '</p>';
}

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

在此处输入图片说明

2)要在收到的订单,订单视图和电子邮件通知中显示该信息,您将使用:

add_filter( 'woocommerce_get_order_item_totals', 'add_udfyld_ean_row_to_order_totals', 10, 3 );
function add_udfyld_ean_row_to_order_totals( $total_rows, $order, $tax_display ) {;

    $new_total_rows = [];

    foreach($total_rows as $key => $total ){
        $new_total_rows[$key] = $total;

        if( $order->get_meta('_udfyld_ean') && 'payment_method' === $key ){
            $new_total_rows['udfyld_ean'] = array(
                'label' => __('Udfyld EAN', 'woocommerce'),
                'value' => esc_html( $order->get_meta('_udfyld_ean') ),
            );
        }
    }

    return $new_total_rows;
}

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

在此处输入图片说明

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Woocommerce管理员电子邮件通知中显示产品自定义字段值

在WooCommerce电子邮件通知中为管理员显示自定义字段

仅对WooCommerce管理员电子邮件通知显示自定义字段

电子邮件,管理员订单和“谢谢”页面上的WooCommerce 4.0自定义结帐和ACF字段值

在WooCommerce订单和电子邮件通知中显示自定义字段值

在Woocommerce订单和电子邮件中显示产品变体的自定义字段

使Woocommerce(3.8.0)管理员电子邮件中包含我在结帐页面上的自定义字段数据

在Woocommerce管理员订单列表自定义列中显示结帐字段值

在 WooCommerce 的管理员新订单电子邮件通知中显示订单下载

自定义WooCommerce datepicker检出字段已保存并显示在订单和电子邮件中

订单自定义字段未显示在WooCommerce电子邮件通知中

WooCommerce 订单电子邮件中未显示自定义电话号码字段

在woocommerce订单电子邮件中显示多个产品的自定义字段

发送给管理员的 WooCommerce 电子邮件通知中的自定义格式地址部分

Woocommerce在管理员订单详细信息上显示自定义字段数据

如何在WooCommerce管理员单笔订单中显示自定义结帐账单字段

在WooCommerce订单管理员中搜索自定义字段

Woocommerce管理员编辑订单页面常规部分中的自定义可编辑字段

如何在woocommerce中的新订单电子邮件中显示高级自定义字段数据

在Woocommerce管理员订单列表自定义列中显示用户名

在Woocommerce订单和电子邮件中的订单总数之后添加自定义文本

在WooCommerce管理员订单页面上将产品自定义字段显示为订单项元

在WooCommerce订单和电子邮件中添加和显示自定义购物车项目数据

WooCommerce管理订单中的自定义操作按钮,用于发送电子邮件

在WooCommerce订单和电子邮件通知上显示自定义交货通知

在WooCommerce的电子邮件和订单页面中保存并显示产品自定义数据

在WooCommerce“订单已完成”电子邮件中添加自定义产品字段

WooCommerce电子邮件上的订单自定义字段中的替换收件人

WooCommerce管理员订单页面-删除电子邮件和电话上的超链接