如何在结帐/购物车页面中显示产品自定义选项

时间:2013-04-08 06:34:36

标签: magento

我想在购物车页面上显示自定义选项我尝试使用$ _options = $ this-> getOptionList()但它只显示所选的选项,我想检索所有选项。

2 个答案:

答案 0 :(得分:4)

要在购物车页面获取设置为“AddtoCart”时的产品自定义选项值,请尝试使用以下代码。

$cart = Mage::helper('checkout/cart')->getCart()->getQuote()->getAllItems();
/* cart item loop */
foreach($cart as $item) {

/* This will get custom option value of cart item */
$_customOptions = $item->getProduct()->getTypeInstance(true)->getOrderOptions($item->getProduct());

/* Each custom option loop */
foreach($_customOptions['options'] as $_option){
    echo $_option['label'] .'=>'. $_option['value']."<br/>";
    // Do your further logic here
   }
}

已经回复了 Display Magento Custom Option Values in Shoping Cart

答案 1 :(得分:0)

您只能使用此功能$this->getOptionList()获取选定的选项,但如果您确实想要检索所有自定义选项,那么首先您需要检索产品ID 你可以在购物车页面上获得这样的产品

$_item = $this->getItem();
$_item->getProduct();

这将从中检索产品,您可以获得产品并加载产品。

$product = Mage::getModel('catalog/product')->load($_item->getProduct()->getData('entity_id'));

    $product = Mage::getModel('catalog/product')->load($product);

    foreach ($product->getOptions() as $o) {
           print_r($o); // show all product options
        }
    }