Je ne veux pas que Woocommerce mette automatiquement à jour le statut de la commande de « En pause » à « Terminé ». J'aimerais qu'il reste "en attente" car nous envoyons des articles de remplacement et attendons que les articles originaux nous soient retournés. Fondamentalement, je souhaite le mettre en attente même après l'expédition de l'article. Y'a-t-il une quelconque façon de réussir cela?
J'ai essayé d'utiliser le code ci-dessous sans succès :
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(); } } }