我有一个产品有多个自定义选项的客户可以选择。例如:
产品:10朵花篮(SKU 100) 自定义选项:
红玫瑰数量:下降0到10(每个有SKU 200)
Purple Roses数量:下拉0到10(每个有SKU 300)
粉色郁金香数量:下降0到10(每个有SKU 400)
这样客户可以建立自己的篮子。但是,现在我必须导出我的仓库系统订单,我需要列出自定义选项的SKU值(数量)。虽然我可以从订单项中获取标签和价值。没有SKU。
我得到的东西是这样的:
$orders = Mage::getModel('sales/order')->getCollection()
->addAttributeToFilter('status', array('eq' => 'processing'));
foreach ($orders as $order) {
foreach ($order->getAllItems() as $order_item) {
$optionsArr = $order_item->getProductOptions();
if (count($optionsArr['options']) > 0) {
foreach ($optionsArr['options'] as $option) {
$optionTitle = $option['label'];
$optionId = $option['option_id'];
$optionValue = $option['value'];
// no SKU ?!?!
}
}
}
}
如何选择每个自定义选项的SKU?
答案 0 :(得分:4)
尝试加载产品并获取选项集。
foreach($order->getAllItems() as $item) {
$product = Mage::getModel('catalog/product')->load($item->getProductId());
$options = $product->getProductOptionsCollection();
foreach($options as $option) {
echo $option->getSku();
}
}
答案 1 :(得分:0)
请你这样试试。
foreach($order->getAllItems() as $_item) {
$customOptions = $_item->getProductOptions();
foreach ($customOptions['options'] as $_eachOption) {
$objModel = Mage::getModel('catalog/product_option_value')->load($_eachOption['option_value']);
print_r($objModel->getData());
}
}