php - magento cart product's wont stack -


मैंने इस कोड वाले checkout_cart_product_add_after पर एक पर्यवेक्षक जोड़ा है:

  सार्वजनिक कार्य addToCart (Varien_Event_Observer $ observer) {$ cart = दाना :: मिलमोडेल ('चेकआउट / कार्ट'); // Mage_Checkout_Model_Cart $ item = $ observer- & gt; getQuoteItem (); // Mage_Sales_Model_Quote_Item $ quote = $ item- & gt; getQuote (); // Mage_Sales_Model_Quote $ उत्पाद = $ item- & gt; getProduct (); // Mage_Catalog_Model_Product $ cart- & gt; init (); $ Item = $ item- & gt; getParentItem ()? $ Item- & gt; getParentItem (): $ निरीक्षक- & gt; getQuoteItem (); $ _product = $ product- & gt; getTypeId () == "कॉन्फ़िगर करने योग्य"? $ Item- & gt; getOptionByCode ('simple_product') - & gt; getProduct (): $ उत्पाद; $ _product- & gt; setIsSuperMode (सही); $ आइटम, & gt; setProduct ($ _ उत्पाद); $ आइटम, & gt; setQty (1); $ आइटम, & gt; बचाने (); $ Quote- & gt; setTotalsCollectedFlag (गलत); $ Quote- & gt; collectTotals (); $ Cart- & gt; बचाने (); दाना :: getSingleton ( 'चेकआउट / सत्र') - & gt; setCartWasUpdated (सही); $ इस वापसी; }  

यह हमेशा गाड़ी में साधारण उत्पाद जोड़ता है, कॉन्फ़िगर करने योग्य नहीं। यह काम कर रहा है, एक बात को छोड़कर, वे एक दूसरे पर स्टैक नहीं करते।

उदाहरण के लिए: ProductID = 26 जब मैं आईडी 26 के साथ तेरह उत्पादों को जोड़ता हूं, मैं उन्हें अलग नहीं चाहता, लेकिन सिर्फ मात्रा

गाड़ी के बाद- > Init ():

  $ productId = $ observer- & gt; getProduct () - & gt; getId (); $ Quote = दाना :: getSingleton ('चेकआउट / सत्र') - & gt; getQuote (); अगर (! $ कोट- & gt; हैप्रॉडक्टआईडी ($ उत्पाद आयडी)) {// सामान्य जोड़} और {$ आइटम = $ कोट-> मिलइटीमब्यप्रॉडक्ट ($ निरीक्षक- & gt; मिलना उत्पाद) (); $ ItemQty = $ item- & gt; getQty (); $ आइटम, & gt; setQty ($ itemQty +1); $ आइटम, & gt; बचाने (); }  

मैंने इसे कोशिश नहीं की। मुझे बताइए कि यह काम क्या है।


Comments