You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WooCommerce后台订单列表自定义列无法显示值的解决方法

WooCommerce后台订单列表自定义列不显示数据的解决方法

你的问题出在自定义列的回调函数里,存在两个明显错误:

  1. wc_get_order函数参数使用错误,该函数仅需传入订单ID,多余参数会导致无法正确获取订单对象
  2. 未定义$my_value变量,直接echo会输出空值

修正后的完整代码

替换原来的「Edit Admin Orders Page, New Column」部分代码即可:

//Edit Admin Orders Page, New Column
add_filter('manage_edit-shop_order_columns', 'add_order_new_column_header', 20);
function add_order_new_column_header($columns){
    $new_columns = array();
    foreach ($columns as $column_name => $column_info){
        $new_columns[$column_name] = $column_info;
        if ('order_total' === $column_name) {
            $new_columns['order_details'] = __('Info', 'textdomain');
        }
    }
    return $new_columns;
} 

add_action('manage_shop_order_posts_custom_column', 'add_wc_order_admin_list_column_content');   
function add_wc_order_admin_list_column_content($column){
    global $post;

    if ('order_details' === $column){
        // 正确获取订单对象
        $order = wc_get_order($post->ID);
        // 通过订单对象获取自定义字段值(WooCommerce 3.0+推荐用法)
        $my_value = $order->get_meta('_billing_my_custom_select');
        
        // 有值则输出,无值显示默认文本
        echo !empty($my_value) ? $my_value : __('未填写', 'textdomain');
    } 
}
//End Edit Admin Orders Page, New Column

额外优化建议

为了兼容WooCommerce 3.0+的规范,建议同时修改「Admin Note Section」的代码,将$order->id替换为$order->get_id():

//Admin Note Section
add_action('woocommerce_admin_order_data_after_billing_address', function($order) {
    $my_value = get_post_meta($order->get_id(), '_billing_my_custom_select', true);
    
    if (!empty($my_value)) {
        echo '<p><strong>' . __('How Did You Discover Us?', 'textdomain') . ':</strong> ' . $my_value . '</p>';     
    } 
});
//End Admin Note Section

原理说明

  • wc_get_order($post->ID):正确获取WooCommerce订单对象,这是官方推荐的方式
  • $order->get_meta('_billing_my_custom_select'):通过订单对象的内置方法获取自定义字段值,比直接使用get_post_meta更安全,且兼容未来版本的WooCommerce

内容的提问来源于stack exchange,提问作者TurnItOffAndOnAgain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 13:35:15