在 WooCommerce 中,我需要我的所有订单立即进入“处理”状态,以便在处理订单时直接发送订单处理电子邮件。
默认情况下,Paypal 和 COD 订单存在此行为,但 BACS 和 Check where 默认状态为 不存在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”。我怎样才能使它也适用于“支票”订单?