我一直用這個了一整天,但我無法找到任何解決辦法:Magento:兩次添加產品到購物車,具有不同的屬性!
我有一個產品(鏡頭),它具有相同的屬性,但用戶可以選擇一個屬性爲一隻眼睛設置和其他屬性設置爲了另一個。
在前端,我知道了,看到它here。
因此,用戶可以選擇左眼或右眼的屬性,但它是同一產品。
我構建了一個函數,它應該在購物車中(保存前)購買一個產品,添加其他一組屬性,因此購物車中應該有兩個產品。會發生什麼是有兩個產品,但具有相同的屬性集?
下面是函數的代碼片段:
$req = Mage::app()->getRequest();
$request[’qty’] = 1;
$request[’product’] = 15;
$request[’uenc’] = $req->get(’uenc’);
$request[’options’][1] = 1;
$request[’options’][3] = 5;
$request[’options’][2] = 3;
$reqo = new Varien_Object($request);
$newitem = $quote->addProduct($founditem->getProduct(), $reqo);
//add another one ------------------------------------------
$request[’qty’] = 1;
$request[’product’] = 15;
$request[’uenc’] = $req->get(’uenc’);
$request[’options’][1] = 2;
$request[’options’][3] = 6;
$request[’options’][2] = 4;
$reqo = new Varien_Object($request);
$newitem = $quote->addProduct($founditem->getProduct(), $reqo);
或者另一個測試,與其他一些功能(再次,產品附加值,有2數量,但相同的屬性...):
$req = Mage::app()->getRequest();
$request[’qty’] = 1;
$request[’product’] = 15;
$request[’uenc’] = $req->get(’uenc’);
$request[’options’][1] = 2;
$request[’options’][3] = 6;
$request[’options’][2] = 4;
$product = $founditem->getProduct();
$cart = Mage::getSingleton(’checkout/cart’);
//delete all first…
$cart->getItems()->clear()->save();
$reqo = new Varien_Object($request);
$cart->addProduct($founditem->getProduct(), $reqo);
$cart->getItems()->save();
$request[’options’][1] = 1;
$request[’options’][3] = 5;
$request[’options’][2] = 3;
$reqo = new Varien_Object($request);
$cart->addProduct($founditem->getProduct(), $reqo);
$cart->getItems()->save();
我真的不知道有什麼更多的事情要做,請任何意見,這是在Magento我的第一個模塊...
謝謝你,彼得
請編輯您的代碼並使用「代碼示例」功能設置代碼格式。 – greg0ire 2010-06-17 16:21:14
屬性集在Magento中具有相當特殊的含義。你的意思是他們可以爲產品選擇一個選項? – 2010-06-18 02:44:57
是的,他們可以選擇產品的選項。對於每個眼睛相同的選項。 你可以在這裏看到它:http://connecta.si/clarus/index.php/featured/acuvue-oasys-for-astigmatism.html – Peter 2010-06-18 07:42:48