簡體   English   中英

更改 Woocommerce 管理員訂單列表時間和日期格式

[英]Change Woocommerce Admin Order List Time and Date Format

嗨,我試圖通過 functions.php 更改時間和日期格式,但它仍然顯示最近 24 小時的訂單,如“1 分鍾前”或“2 小時前”。 我如何讓所有訂單只在他的管理訂單列表上顯示訂單時間和日期? 任何幫助深表感謝。 在此處輸入圖像描述

據我所知,有一個過濾器可以連接日期格式: woocommerce_admin_order_date_format - https://github.com/woocommerce/woocommerce/blob/a7d57a248ed03dac7bad119e71f83dd961f43cb3/includes/admin-list-tables/class-cw -table-orders.php在訂單超過 1 天時才會觸發。

也許這就是為什么不起作用。

另一種優雅的方法,不接觸任何模板文件是刪除本機 WooCommerce 日期列並添加自定義日期列。

這是一個代碼片段(未經測試) ,您可以將其粘貼到您的 functions.php 文件中。

add_filter( 'manage_edit-shop_order_columns', 'so61375632_add_new_order_admin_column' );
function so61375632_add_new_order_admin_column( $columns ) {

    unset( $columns['order_date'] ); // remove the default column

    $edit_columns = array_splice( $columns, 0, 2 );

    $edit_columns['order_custom_date'] = 'Date';

    return array_merge( $edit_columns, $columns );

}

add_action( 'manage_shop_order_posts_custom_column', 'so61375632_add_new_order_admin_column_content', 20, 2 );
function so61375632_add_new_order_admin_column_content( $column, $order_id ) {

    if ( $column == 'order_custom_date' ) {

        $order = wc_get_order( $order_id );

        if( ! is_wp_error( $order ) ) {

            echo $order->get_date_created()->format ('M j, Y H:i'); // pass any PHP date format 

        }

    }

}

祝你好運;)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM