我需要更改 Woocommerce 应用于通过货到付款的订单的默认订单状态。默认正在处理,我需要将其设置为暂停。我试过这个
add_action( 'woocommerce_thankyou', 'my_order_status', 50 );
function my_order_status( $order_id ) {
if ( ! $order_id ) {
return;
}
$order = wc_get_order( $order_id );
if ( ( get_post_meta( $order->id, '_payment_method', true ) == 'cod' ) && ( $order->status == 'processing' ) ) {
$order->update_status('on-hold');
}
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用。有什么想法吗?
小智 5
这解决了我的问题
add_action('woocommerce_thankyou_cod', 'action_woocommerce_thankyou_cod', 10, 1);
function action_woocommerce_thankyou_cod($order_id)
{
$order = wc_get_order($order_id);
$order->update_status('on-hold');
}
Run Code Online (Sandbox Code Playgroud)
把它放在你的functions.php中