簡體   English   中英

如何將“本地取件加取件日期”添加到 WooCommerce 管理訂單列表中的新列

[英]How to add "Local Pickup Plus pickup date" to a new column in WooCommerce admin order list

我正在嘗試在 WooCommerce 管理訂單列表中添加一列,其中應顯示來自插件Local Pickup PlusPickup Date的值。 這可以更好地了解取件日期。

獎勵:如果可能,如果可以單擊該列以便對所有取件日期進行排序(第一個取件日期首先顯示等),那就太好了。

到目前為止,我得到了以下成功添加一列的代碼,現在該列應該填充取貨日期數據。

add_filter( 'manage_edit-shop_order_columns', 'bbloomer_add_new_order_admin_list_column' );
function bbloomer_add_new_order_admin_list_column( $columns ) {
    $columns['pickup_date'] = 'Afhentningsdato';
    return $columns;
}
 
add_action( 'manage_shop_order_posts_custom_column', 'bbloomer_add_new_order_admin_list_column_content' );   
function bbloomer_add_new_order_admin_list_column_content( $column ) {
    global $post;

    if ( 'pickup_date' === $column ) {
        // Add pickup date for each order here
    }
}

這應該足夠了,通過添加到代碼中的注釋標簽進行解釋

  • 約會開始和結束值設置為時間戳,因此date函數用於格式化為本地時間/日期
// Add a Header
function filter_manage_edit_shop_order_columns( $columns ) {
    // Add new column
    $columns['pickup_date'] = 'Afhentningsdato';

    return $columns;
}
add_filter( 'manage_edit-shop_order_columns', 'filter_manage_edit_shop_order_columns', 10, 1 );

// Populate the Column
function action_manage_shop_order_posts_custom_column( $column, $post_id ) {
    // Compare
    if ( $column == 'pickup_date' ) {
        // Get order
        $order = wc_get_order( $post_id );
        
        // Loop though order shipping methods
        foreach( $order->get_items('shipping') as $shipping_item ) {
            // Get appoitment start
            $pickup_appointment_start = $shipping_item->get_meta( '_pickup_appointment_start' );
            $starttime = date( 'H:i', $pickup_appointment_start );
            $startdate = date( 'd-m-Y', $pickup_appointment_start );
            
            // Get appointment end
            $pickup_appointment_end = $shipping_item->get_meta( '_pickup_appointment_end' );
            $endtime = date( 'H:i', $pickup_appointment_end );
            $enddate = date( 'd-m-Y', $pickup_appointment_end );

            echo '<p>ST = ' . $starttime . '</p>';
            echo '<p>SD = ' . $startdate . '</p>';
            echo '<p>ET = ' . $endtime . '</p>';
            echo '<p>ED = ' . $enddate . '</p>';
        }       
    }
}
add_action( 'manage_shop_order_posts_custom_column' , 'action_manage_shop_order_posts_custom_column', 10, 2 );

暫無
暫無

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

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