将客户订单总数添加到 WooCommerce 管理订单列表 (HPOS)

问题描述 投票:0回答:1

基于 将列添加到 WooCommerce (+ HPOS) 中的管理订单列表答案代码,我在 wc-orders 仪表板中添加自定义列,但我无法使其正常工作

这是我在子主题的functions.php中输入的代码

add_filter( 'manage_woocommerce_page_wc-orders_columns', 'add_wc_order_list_custom_column' );
function add_wc_order_list_custom_column( $columns ) {
    $reordered_columns = array();

    // Inserting columns to a specific location
    foreach( $columns as $key => $column){
        $reordered_columns[$key] = $column;

        if( $key ===  'order_status' ){
            // Inserting after "Status" column
            $reordered_columns['my-column1'] = __( 'Title1','customer_order_count');
            $reordered_columns['my-column2'] = __( 'Title2','theme_domain');
        }
    }
    return $reordered_columns;
}

add_action('manage_woocommerce_page_wc-orders_custom_column', 'display_wc_order_list_custom_column_content', 10, 2);
function display_wc_order_list_custom_column_content( $column, $order ){
    switch ( $column )
    {
        case 'my-column1' :
            // Get custom order metadata
            $value = $order->get_meta('$orders_count');
            if ( ! empty($value) ) {
                echo $value;
            }
        

        case 'my-column2' :
            // Get custom order metadata
            $value = $order->get_meta('_the_meta_key2');
            if ( ! empty($value) ) {
                echo $value;
            }
            // For testing (to be removed) - Empty value case
            else {
                echo '<small>(<em>no value</em>)</small>';
            }
            break;
    }
}
php woocommerce admin wp-admin
1个回答
0
投票

您正在使用

$orders_count
作为meta_key,因此您应该尝试删除开头的字符
$
,例如:

$value = $order->get_meta('orders_count');

现在应该可以工作了。


第一个函数中的

'customer_order_count'
也是你的主题域吗?
如果不更换:

$reordered_columns['my-column1'] = __( 'Title1','customer_order_count');

与:

$reordered_columns['my-column1'] = __( 'Orders count','theme_domain');
© www.soinside.com 2019 - 2024. All rights reserved.