Maison > Questions et réponses > le corps du texte
J'ai développé un plugin pour connecter les commandes WooCommerce à HubSpot. Le problème que j'ai est que même si cela fonctionne, le hook que j'utilise envoie désormais les informations de commande à HubSpot avant que la technologie ne soit terminée. Cela signifie donc que des éléments tels que « Commande échouée » seront envoyés comme « En attente » et que le code promo sera omis.
Je veux donc savoir quel est le bon crochet à utiliser.
Mon objectif : envoyer des données à HubSpot à chaque fois qu'une commande WooCommerce est créée et terminée, et à chaque fois qu'une commande WooCommerce est mise à jour.
Ce que j'ai jusqu'à présent :
add_action('save_post_shop_order', 'printout', 10, 3); function printout($post_ID, $post, $update) { if (!is_admin()){ return; } if($update){ $msg = $post_ID; $order = get_woocommerce_order($msg); mainplugin($msg, $order); } } add_action('woocommerce_new_order', 'neworder_delegator', 10, 2); function neworder_delegator($order_id, $order){ mainplugin($order_id, $order); }
Donc je suppose que je cherche juste le bon crochet pour obtenir ce que je veux.
Merci !
P粉2168079242024-04-01 17:11:24
Voici votre réponse :
Chaque transition de commande WooCommerce possède un ou plusieurs hooks dynamiques qui se déclenchent lorsque la transition d'état se produit.
Ils commencent par "woocommerce_order_status_" et le reste de l'action est le nouveau statut vers lequel la commande est passée, ou le statut aller-retour au format "
Exemple
Vous pouvez accrocher vos fonctions
add_action( 'woocommerce_order_status_completed', 'your_order_completed_function');
Déclenchez votre fonction uniquement lorsque la commande est convertie en commande terminée, et non lors d'un remboursement, d'une annulation, d'un blocage, etc. car ces opérations seront exécutées sur d'autres opérations comme
woocommerce_order_status_refunded woocommerce_order_status_cancelled woocommerce_order_status_on-hold woocommerce_order_status_failed woocommerce_order_status_processingModifier pour ajouter un lien vers la documentation officielle de WooCommerce :
https://woocommerce.github.io/code-reference/hooks /hooks.html