2012-09-24 199 views
3

我试图将产品添加到使用自定义模块的购物车。下面是我的代码使用自定义添加到购物车有产品自定义属性在Magento

$product_id = $this->getRequest()->getParam('product'); 

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

    $param = array('product' => $product->getId(), 'qty' => 2,'options["'.$option_id.'"]' => $option_type_id); 

    $cart = Mage::getModel('checkout/cart')->init(); 
    $cart->addProduct($product, new Varien_Object($param)); 
    Mage::getSingleton('checkout/session')->setCartWasUpdated(true); 
    $cart->save(); 

我可以添加产品名称,数量,使用的产品ID车,但我没能在购物车中的产品定制选项。

请给我一个这方面的一手。

感谢, 普拉卡什

回答

3

你是如此接近!你需要改变的主要是你的$param,因为它不是Magento想要的结构。这应该做的伎俩:

$param = array(
    'product' => $product->getId(), 
    'qty' => 2, 
    'options' => array(
         $option_id => $option_value, 
         $option_id2 => $option_value2, 
        ), 
); 

请注意,您的产品所需的任何自定义选项中需要有值,以避免致命的错误,同时也添加到购物车。此外,不需要将$param作为Varien_Object投射 - Magento理解阵列就好了。

+0

谢谢..以上代码工作正常.. –

相关问题