我需要將所有進入“暫停”的 WooCommerce 訂單設定為“處理”,并立即發送訂單處理電子郵件。
我試過這個
function custom_woocommerce_auto_order( $order_id ) {
if ( ! $order_id ) {
return;
}
$order = wc_get_order( $order_id );
if( 'on-hold'== $order->get_status() ) {
$order->update_status( 'processing' );
}
}
add_action( 'woocommerce_thankyou', 'custom_woocommerce_auto_order' );
盡管狀態發生了變化,但仍會發送“暫停”電子郵件通知,即使它應該只是“處理中”電子郵件通知。
有什么建議嗎?
uj5u.com熱心網友回復:
只要付款未完成,訂單就會處于暫停狀態。要將某些付款方式的默認訂單狀態立即更改為處理(并跳過暫停狀態)并發送處理電子郵件通知,您可以使用:
- Bacs -
woocommerce_bacs_process_payment_order_status過濾鉤 - 檢查 -
woocommerce_cheque_process_payment_order_status過濾鉤 - 鱈魚-
woocommerce_cod_process_payment_order_status過濾鉤
所以你得到:
function filter_process_payment_order_status( $status, $order ) {
return 'processing';
}
add_filter( 'woocommerce_bacs_process_payment_order_status','filter_process_payment_order_status', 10, 2 );
add_filter( 'woocommerce_cheque_process_payment_order_status','filter_process_payment_order_status', 10, 2 );
add_filter( 'woocommerce_cod_process_payment_order_status', 'filter_process_payment_order_status', 10, 2 );
這些過濾器會導致狀態更改為所需的狀態。電子郵件通知將基于此自動發送
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/338760.html
標籤:php WordPress的 求购 订单 电子邮件通知
