今天我到达时,通过选项ID写入购物车中的产品的自定义选项,如下所示:
$productId = 41;
$optionId = 42;
$valueId = $_SESSION['date'];
$items = Mage::getSingleton('checkout/session')->getQuote()->getAllItems();
foreach($items as $item) {
if($item->getProductId() == $productId) {
$o = $item->getOptionByCode('option_'.$optionId);
$o->setHasQtyOptionUpdate(true);
$o->setValue($valueId);
}
}
Mage::getSingleton('checkout/cart')->save();
我想在选项名称的功能中设置自定义选项的值,而不是在id的功能中,因为我需要使它通用(我将使用自定义选项的通用名称,如“GENERICNAME”,我将写在里面。)
我尝试使用以下代码只是为了获得选项名称,但它不起作用(我得到显示选项名称,没有任何显示):
foreach($items as $item) {
$_options = $item->getProduct()->getTypeInstance(true)->getOrderOptions($item->getProduct());
foreach($_options["options"] as $option) {
// Zend_debug::dump($option);
echo $option['label'];
echo $option['value'];
echo $option['print_value'];
echo $option['option_id'];
// echo $option['option_type'];
// echo $option['option_value'];
// echo $option['custom_view'];
// Pour charger l'option :
// $_option = Mage::getModel('catalog/product_option')->load($option['option_id']);
}
}
你知道为什么,你知道怎么做吗?
提前致谢
任何想法????