Rumah > Soal Jawab > teks badan
Saya membangunkan pemalam untuk menyambungkan pesanan WooCommerce ke HubSpot. Masalah yang saya hadapi ialah semasa ia berfungsi, cangkuk yang saya gunakan kini menghantar maklumat pesanan kepada HubSpot sebelum teknologi selesai. Jadi ini bermakna perkara seperti "Pesanan Gagal" akan dihantar sebagai "Belum selesai" dan kod kupon ditinggalkan.
Jadi saya ingin tahu apakah cangkuk yang betul untuk digunakan.
Matlamat saya: Hantar data ke HubSpot setiap kali pesanan WooCommerce dibuat dan diselesaikan, dan setiap kali pesanan WooCommerce dikemas kini.
Apa yang saya ada setakat ini:
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); }
Jadi saya rasa saya hanya mencari cangkuk yang sesuai untuk mendapatkan apa yang saya mahukan.
Terima kasih!
P粉2168079242024-04-01 17:11:24
Ini jawapan anda:
Setiap peralihan pesanan WooCommerce mempunyai satu atau lebih cangkuk dinamik yang menyala apabila peralihan keadaan berlaku.
Mereka bermula dengan "woocommerce_order_status_" dan selebihnya tindakan ialah status baharu pesanan telah dialihkan atau status perjalanan pergi balik dalam format "
Contoh
Anda boleh mengaitkan fungsi anda
add_action( 'woocommerce_order_status_completed', 'your_order_completed_function');
Hanya cetuskan fungsi anda apabila pesanan ditukar kepada selesai, bukan pada bayaran balik, pembatalan, penahanan, dsb. kerana operasi ini akan dijalankan pada operasi lain seperti
woocommerce_order_status_refunded woocommerce_order_status_cancelled woocommerce_order_status_on-hold woocommerce_order_status_failed woocommerce_order_status_processingEdit untuk menambah pautan ke dokumentasi WooCommerce rasmi:
https://woocommerce.github.io/code-reference/hooks /hooks.html