簡體   English   中英

在woocommerce_new_order掛鈎中獲取訂單ID

[英]Get the order id in woocommerce_new_order hook

為什么不能以新順序獲得id順序?

該代碼不起作用

add_action( 'woocommerce_new_order', 'get_order_details_woo',  1, 1  );
function get_order_details_woo ($order_id)
{

    $order = wc_get_order( $order_id );

    foreach ($order->get_items() as $item_key => $item_values):

        $item_id = $item_values->get_id();

        $item_data = $item_values->get_data();

        $product_name = $item_data['name'];

        //echo $product_name;
    endforeach;

}

但是這段代碼是可行的

 add_action( 'woocommerce_new_order', 'get_order_details_woo',  1, 1  );

    function get_order_details_woo ()
    {

        $order = wc_get_order( 100);

        foreach ($order->get_items() as $item_key => $item_values):


            $item_data = $item_values->get_data();

            $product_name = $item_data['name'];

            //echo $product_name;
endforeach;

    }

如何以新順序獲取ID?

如果我沒有訂單編號,獲取新的訂單詳細信息?

您可以通過此鈎子獲得訂單ID,但目前看來訂單剛剛創建,尚無產品。 您可以使用var_dump進行檢查。

嘗試另一個鈎子:

add_action( 'woocommerce_checkout_create_order', 'get_order_details_woo',  1, 1  );

在訂單對象獲取數據之后以及將其保存到數據庫之前,將觸發此事件。 您無需在此處檢索訂單ID,因為您可以直接獲取訂單對象。

add_action('woocommerce_checkout_update_order_meta','get_order_details_woo',10,2); 函數get_order_details_woo($ order_id,$ data){}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM