Wie Sie add product to cart programmgesteuert in Magento

Ich bin nicht in der Lage, um Produkt in den Warenkorb programmgesteuert in Magento habe ich versucht alle möglichen Techniken zum hinzufügen von Produkt mit der Menge in den Warenkorb ( in Magento), sind die Dinge, die ich habe versucht und Foren/Websites genommen Hilfe. Aber keiner von Ihnen arbeitet. Ich bin mit Magento Community edition 1.9.1.1. Wenn jemand hat einen Vorschlag/Antwort, bitte teilen.

  • Versuchte es per URL - z.B. [Magento_Store_URL]/checkout/cart/add?product=[id]&qty=[qty] oder auch wie dieser - [Magento_Store_URL]/checkout/cart/add/product/[id]/qty/[qty]. Ich habe auch versucht, mit form_key, erzeugt über Mage::getSingleton('core/session')->getFormKey();. All diese Sachen überhaupt nicht funktioniert. Diese Dinge sind hier erwähnt - Magento website
  • Als Nächstes habe ich versucht über die programmatisch wie dieser.

HTML:

<?php 
require_once 'app/Mage.php'; 
Mage::app(); 
$product=new Mage_Catalog_Model_Product();
$product->load(1); //1 is product id, this is simple product ( type)
$quote = Mage::getSingleton('checkout/session')->getQuote();
$quote->addProduct($product, 1 ); //quantity is 1
$cart = Mage::getSingleton('checkout/cart');
$cart->init(); //tried commenting this too!
$cart->addProduct($product, 1 ); //quantity is 1
$cart->save();
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);
$quote->collectTotals()->save(); header('Location: '. 'http://localhost/magento/index.php/checkout/cart');

  • Habe auch versucht folgenden.

HTML:

<?php
require_once 'app/Mage.php';
Mage::app();
$params=array( 'product'=>1, 'qty' => 3 );
$cart = Mage::getSingleton('checkout/cart');
$product = new Mage_Catalog_Model_Product();
$product->load($params["product"]);
$cart->addProduct($product, $params);
$cart->save();
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);
header('Location: '. 'http://localhost/magento/index.php/checkout/cart');

Habe ich genommen, helfen, aus folgenden websites.

Ist es falsch in meinem code, was auch immer ich versucht habe, oder gibt es eine Einstellung Problem mit meiner Magento-Installation?

Update 1
Ich habe versucht, von unten die Antwort vorgeschlagen zu dieser Frage, noch ist nicht arbeiten.

HTML:

$formKey = Mage::getSingleton('core/session')->getFormKey();
$params = array(
    'product' => 3,
    'qty' => 2,
	'form_key' => $formKey
);
$product = Mage::getModel('catalog/product')->setStoreId(Mage::app()->getStore()->getId())->load($params['product']);
$cart = Mage::helper('checkout/cart')->getCart();
$cart->addProduct($product, $params);
$cart->save();

Update 2

Dies ist die Arbeit, wenn ich einen controller und setzen Sie dort Ihren code nicht funktioniert - in einer standalone-Seite verweist /app/Mage.php .

  • Nicht sicher, aber vielleicht haben Sie zu geben Sie in Ihrem Skript die aktuelle speichern vor dem speichern: Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
  • Ich habe nur den einen store, habe versucht dein Vorschlag, immer noch nicht funktioniert.
Schreibe einen Kommentar