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

How to display custom checkout billing field in WooCommerce admin single orders

在结帐过程中,在公司下,我有另一个公司注册号字段。现在,一切正常,该字段已正确保存在每个订单下,但我想知道如何在管理面板中打开订单时在公司名称下显示公司注册号。

PS:字段名是billing_cif

来自this WooCommerce snippet found in Customizing checkout fields using actions and filters(有一点点错误的地方),试试下面的:

/**
 * Display field value on the order edit page
 */
add_action( 'woocommerce_admin_order_data_after_billing_address', 'my_custom_checkout_field_display_admin_order_meta', 10, 1 );

function my_custom_checkout_field_display_admin_order_meta($order){
    echo '<p><strong>'.__('My Field').':</strong><br>' . get_post_meta( $order->get_id(), 'billing_cif', true ) . '</p>';
}

您需要确保 wp_postmeta table 下的正确 meta_keybilling_cif,因为它也可以像 _billing_cif 一样保存。

代码进入活动子主题(或活动主题)的 functions.php 文件。它应该有效。


或者自 WooCommerce 3 以来以更好的方式做同样的事情:

add_action( 'woocommerce_admin_order_data_after_billing_address', 'my_custom_checkout_field_display_admin_order_meta', 10, 1 );

function my_custom_checkout_field_display_admin_order_meta( $order ){
    $billing_cif = $order->get_meta('billing_cif'); // Get custom field value

    if( ! empty( $billing_cif ) ) {
        echo '<p><strong>'.__('CIF reference').':</strong><br>' . $billing_cif . '</p>';
    }
}

代码进入活动子主题(或活动主题)的 functions.php 文件。它也应该有效。