我试图在购物车结账时挂钩第三方应用程序 . 基本上我需要传递有关订单的信息,例如订单中的产品 .
我发现的一切都指向了我的方向:woocommerce_new_order
当我使用那个钩子时,我可以获得有关订单的一些信息但不是一切 .
add_action('woocommerce_new_order','order_check',10,1);
function order_check($order_id){
echo 'Order id is: '.$order_id;
$order = new WC_Order($order_id);
print_r($order);
echo '-----';
/** CHECK IF order has items */
$order_item = $order->get_items();
print_r($order_item);
exit;
}
例如,上面的代码示例将打印订单数组,但是当它调用$ order-> get_items()时,不会返回任何内容 .
1 回答
在
woocommerce_new_order
触发时,订单商品尚未填充 .相反,使用钩子
woocommerce_checkout_order_processed
,你会发现所有项目都被填充 .