搜尋

首頁  >  問答  >  主體

嘗試尋找 WooCommerce 訂單提交的正確掛鉤

我開發了一個插件,用於將 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);
}

所以我想我只是在尋找正確的鉤子來得到我想要的東西。

謝謝!

P粉323374878P粉323374878236 天前518

全部回覆(1)我來回復

  • P粉216807924

    P粉2168079242024-04-01 17:11:24

    這是你的答案:

    每個 WooCommerce 訂單轉換都有一個或多個動態掛鉤,這些掛鉤在狀態轉換發生時觸發。

    它們以「woocommerce_order_status_」開頭,操作的其餘部分是訂單已轉換到的新狀態,或格式為「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

    #

    回覆
    0
  • 取消回覆