我有一個我開發的插件,可以將 WooCommerce 訂單連接到 HubSpot。我遇到的問題是,雖然它可以作業,但我現在使用的鉤子是在技術完成之前向 HubSpot 發送訂單資訊。所以這意味著像失敗訂單這樣的東西會作為待處理發送,并且優惠券代碼被省略。
所以我想知道使用正確的鉤子是什么。
我的目標:每次創建和完成WooCommerce 訂單并更新 WooCommerce 訂單時,將資料發送到 HubSpot。
到目前為止我所擁有的:
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);
}
所以我想我只是在尋找合適的鉤子來得到我想要的東西。
謝謝!
uj5u.com熱心網友回復:
這是你的答案:
每個 WooCommerce 訂單轉換都有一個或多個動態掛鉤,當狀態轉換發生時觸發。
它們以“woocommerce_order_status_”開頭,操作的其余部分是訂單已轉換到的新狀態,或者以“<status_transition_from>到<status_transition_to>”格式所涉及的往返狀態
例子
您可以將您的功能掛鉤到
add_action( 'woocommerce_order_status_completed', 'your_order_completed_function');
僅在訂單轉換為完成時觸發您的功能,而不是在退款、取消、暫停等時觸發您的功能,因為這些會在其他操作上運行,例如
woocommerce_order_status_refunded
woocommerce_order_status_cancelled
woocommerce_order_status_on-hold
woocommerce_order_status_failed
woocommerce_order_status_processing
編輯添加到官方 WooCommerce 檔案的鏈接:
https://woocommerce.github.io/code-reference/hooks/hooks.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/476052.html
