В WooCommerce мне нужно, чтобы все мои заказы немедленно переходили в статус "обработки" , чтобы электронная почта обработки заказа отправлялась непосредственно при обработке заказа.
По умолчанию такое поведение существует для заказов Paypal и COD, , но не для BACS и чека , где статус по умолчанию on-hold
.
Я попробовал несколько таких фрагментов, как этот:
add_action( 'woocommerce_thankyou', 'custom_woocommerce_auto_process_order' );
function custom_woocommerce_auto_process_order( $order_id ) {
if ( ! $order_id ) {
return;
}
$order = wc_get_order( $order_id );
$order->update_status( 'processing' );
}
Но это не работает, заказ по-прежнему отображается в состоянии «в ожидании», и уведомление об обработке по электронной почте не отправляется.,Теперь я только что нашел этот фрагмент:
add_filter( 'woocommerce_bacs_process_payment_order_status', function( $status = 'on_hold', $order = null ) {
return 'processing';
}, 10, 2 );
И это работает, но только для "BACS".Как я могу настроить его так, чтобы он также работал для заказов "Чек"?