Domanda

Ive ha ottenuto un problema in cui i prodotti raggruppati non vengono riconosciuti come la stessa cosa del prodotto scaricabile che viene aggiunto al carrello che rende diversi elementi del carrello invece di aumentare la quantità sull'ultimo elemento del carrello.

Quindi solo per spiegare un po 'di più:

    .
  • Prodotto raggruppato (SKU: Dog-Stuff)
      .
    • Prodotto scaricabile collegato al prodotto Gruppo (SKU: Dog-Bone)

      Allora aggiungi a livello di programmazione per il cane al carrello ..

      Il mio carrello mostra:

        .
      • Dog-osso dal prodotto raggruppato
      • Dog-osso dal prodotto scaricabile

        Speriamo che abbia senso.Sto cercando di farli raggruppare come lo stesso elemento del carrello con una quantità di 2 invece di elementi separati ..

        Ecco il mio codice per aggiungere il prodotto al carrello ..

            $sku = isset($_POST['sku']) ? $_POST['sku']:null;
            if(is_null($sku)){
                echo json_encode(false);
                exit;
            }
            $storeId = Mage::app()->getStore()->getId();
            $product = Mage::getModel('catalog/product')->load(Mage::getModel('catalog/product')->getIdBySku($sku))->setStoreId($storeId);
            $qty = 1;
            $quote = Mage::getSingleton('checkout/session')->getQuote();
            $item = $quote->addProduct($product, $qty);
            $quote->save();
        
        .

È stato utile?

Soluzione

Questo fa il trucco ..

            $storeId = Mage::app()->getStore()->getId();
            $parentId = Mage::getModel('catalog/product')->getIdBySku($parentSku);
            $childId = Mage::getModel('catalog/product')->getIdBySku($childSku);
            $superGroup = array($childId => 1); //1 is qty
            $params = array('super_group' => $superGroup);


            $product = Mage::getModel('catalog/product')->load($parentId)->setStoreId($storeId);
            $cart = Mage::getModel('checkout/cart');
            $cart->addProduct($product, $qty)->save();
            Mage::getSingleton('checkout/session')->setCartWasUpdated(true);
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top