如何仅列出产品,而不是属性?

时间:2016-07-24 21:19:54

标签: php magento

此代码列出了产品订单,但列表是可配置产品的两倍,如何解决?

订单示例: 可配置:汽车。 简单(关联):车黄色。

$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。

  • 我的产品只是简单的,所以我不能使用过滤器列出只可配置。

1 个答案:

答案 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());
}