Ich versuche, ein Produkt programmgesteuert mit einigen benutzerdefinierten Optionen in den Warenkorb zu legen. Der Artikel wird korrekt in den Warenkorb gelegt, aber keine der Optionen wird jemals hinzugefügt. Mein Code lautet:
require_once '../../app/Mage.php';
umask(0);
/* not Mage::run(); */
Mage::app('default');
Mage::getSingleton("core/session", array("name" => "frontend"));
$product_id = 2364;
$id_opt_value = 6072;
$final_opt_value = 6074;
$product = Mage::getModel('catalog/product')->load($product_id);
$cart = Mage::getModel('checkout/cart');
$cart->init();
$params = array(
'product' => $product_id,
'qty' => 1,
'options' => array(
$id_opt_value => '123456',
$final_opt_value => 'black gloss finish',
)
);
$cart->addProduct($product, $params);
$cart->save();
Ich habe doppelt geprüft und die Optionswerte sind korrekt. Ich benutze Magento Ce-1.9.0.0
cart
option
ce-1.9.0.0
komische Ente
quelle
quelle
Ich denke, dass Ihr Optionsarray eine falsche Formatierung hat. Ich denke, das Array sollte im folgenden Format sein.
Dabei ist der Schlüssel die Options-ID und der Wert der Optionswert.
Die Alternative dazu wäre, direkt mit dem Angebot und dem Angebotsposten zu arbeiten und die Funktion
addOption
für das Angebotsposten zu verwenden.quelle
So wird es nicht funktionieren.
Anstelle von 123456 müssen Sie die numerische Nummer für die ID dieser benutzerdefinierten Option eingeben. Wenn die ID beispielsweise 'options_2_text' lautet, übergeben Sie '2' anstelle von '123456'. Für mehr Freigabe verwenden Sie diesen Code auf der Seite cart.html:
quelle