$product = Mage::getModel('catalog/product')->load(12171);
$params = array(
'product' => 12171,
'qty' => 1,
'options' => array(
'237' => '801'
)
);
$request = new Varien_Object();
$request->setData($params);
$cart = Mage::getSingleton('checkout/cart');
$cart->init();
$cart->addProduct($product, $request);
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);
// update session
$session = Mage::getSingleton('checkout/session');
$session->setCartWasUpdated(true);
$cart->save();
Über “$cart = Mage::getSingleton(‘checkout/cart’);” wird $card Objekt erzeugt. Daher denke ich, dass Objekt bereits initialisiert. Um die vorhandene Cart-Info zu behalten, habe ich die Funktion $cart->init() ignoriert. Dadurch wurde der Fehler verursache.
Da $cart->init(); nicht aufgerufen wurde, konnte Produkte nicht in den Warenkorb eingefügt werden. Programm meldet aber keinen Fehler. Darum war die Untersuchung schwer.