此代码列出了产品订单,但列表是可配置产品的两倍,如何解决?
订单示例: 可配置:汽车。 简单(关联):车黄色。
$order = $this->getOrder();
$increment_id = $order->getincrement_id();
$order = Mage::getModel('sales/order')->loadByIncrementId($order->getincrement_id());
$ordered_items = $order->getAllItems();
foreach($ordered_items as $item){
echo $item->getName();
echo number_format($item->getPrice();
}
这一结果: 车10.00 车黄色0.00
我只需要列出:Car 10.00。
答案 0 :(得分:1)
您正在加载订单中的所有商品,其中包括已删除商品和父商品。
您可以使用Mage_Sales_Model_Order::getAllVisibleItems
检索要显示的相关项目:
$orderedItems = $order->getAllVisibleItems();
foreach ($orderedItems as $item) { /** @var Mage_Sales_Model_Order_Item $item */
echo $item->getName();
echo number_format($item->getPrice());
}