我正在加载一个订单:
$order = Mage::getModel('sales/order')->load(2886);
$items = $order->getAllItems();
然后我使用foreach循环:
foreach ($items as $itemId => $item){
$name[] = $item->getName();
$unitPrice[]=$item->getPrice();
$sku[]=$item->getSku();
$ids[]=$item->getProductId();
$qty[]=$item->getQtyToInvoice();
}
我可以得到我需要的大部分数据。但是,我在获取为订单选择的自定义选项时遇到了问题。我可以看到var转储中的数据,但我没有成功地挖掘出它。我还尝试了一些从谷歌上找到的内置功能,但没有成功。
matt (OP)已经自我回答了这个问题。
:
我能够得到我需要的通过使用:
$opts = $item->getProductOptions();
在我的foreach循环。var_dump显示了如何轻松访问数据。
正如Nuno Furtado上面所说的,这在Magento 1.8+中没有返回任何内容。
我的解决方案是:
$opts=$item->getData('product_options');
$opts=unserialize($opts);
print_r($opts);