WooCommerce가 주문 상태를 "일시 중지됨"에서 "완료됨"으로 자동 업데이트하는 것을 원하지 않습니다. 교체 품목을 보내고 원래 품목이 우리에게 반환되기를 기다리고 있으므로 "보류" 상태로 유지하고 싶습니다. 기본적으로 상품 발송 후에도 '보류'로 설정하고 싶습니다. 이것을 달성할 수 있는 방법이 있나요?
아래 코드를 사용해 보았지만 성공하지 못했습니다.
add_action( 'woocommerce_payment_complete', 'cancel_completed_status' ); function cancel_completed_status( $order_id ){ $order = wc_get_order( $order_id ); $items = $order->get_items(); foreach ( $items as $item_id => $item ) { $product_id = $item->get_variation_id() ? $item->get_variation_id() : $item->get_product_id(); if ( $order->has_status( 'on-hold' )) { $order->update_status( 'on-hold' ); $order->save(); } } }