下订单后立即检索产品列表

Retrieving the list of products just after the order is placed

我想从挂钩 actionObjectOrderAddAfter 中的订单中获取产品列表,但是函数 $order->getProducts() returns 一个空数组。从不同的挂钩(例如 hookAdminOrder)调用相同的函数工作正常。我错过了什么? 谢谢

public function hookActionObjectOrderAddAfter($params)
{
    $order_id = $params['object']->id;
    $order = new Order((int) $order_id);
    $products = $order->getProducts()
    
    /*
    ...
    */
}

好的,我明白了。在此挂钩中,您需要从购物车中获取产品 - 而不是从订单本身获取产品。

public function hookActionObjectOrderAddAfter($params)
{
$order_id = $params['object']->id;
$order = new Order((int) $order_id);
$cart = new Cart((int) $order->id_cart);
$products = $cart->getProducts()

/*
...
*/
}