此功能主要用來同事出檔期後回來要補做訂單的時候使用
原本建立完訂單後,再到訂單的頁面修改,使用此段function可以在結帳頁面建立日期
/** * 在 WooCommerce 結帳頁面上添加日期時間輸入字段 */ function add_custom_order_datetime_field() { // 添加日期時間輸入字段 ?> <p class="form-row form-row-wide"> <label for="custom_order_datetime"><?php _e( '訂單時間', 'woocommerce' ); ?> <span class="required">*</span></label> <input type="datetime-local" class="input-text" name="custom_order_datetime" id="custom_order_datetime" required> </p> <?php } add_action( 'woocommerce_checkout_before_order_review', 'add_custom_order_datetime_field' ); /** * 將客戶在結帳時輸入的自定義訂單時間保存到訂單中的建立時間 */ function save_custom_order_datetime_to_order_created_time( $order_id ) { // 檢查是否提交了自定義訂單時間 if ( isset( $_POST['custom_order_datetime'] ) ) { // 獲取提交的自定義訂單時間 $custom_order_datetime = sanitize_text_field( $_POST['custom_order_datetime'] ); // 將自定義訂單時間保存到訂單建立時間中 $order = wc_get_order( $order_id ); if ( $order ) { $order->set_date_created( strtotime( $custom_order_datetime ) ); $order->save(); } } } add_action( 'woocommerce_checkout_update_order_meta', 'save_custom_order_datetime_to_order_created_time' );