Magento заполнить корзину из внешнего скрипта с различными магазинами - PullRequest
0 голосов
/ 28 марта 2012

У меня есть небольшой скрипт, который наполняет мою корзину magento продуктами.Он используется для формы быстрого заказа.Поэтому он вызывается с помощью /quickorder.php?sku1=123&qty1=1&sku2=124&qty2=1 и т. Д. Он работает хорошо для моего магазина по умолчанию, но для второго магазина, похоже, он всегда хочет заполнить корзину покупок по умолчанию.По крайней мере, он перенаправляет меня на URL корзины по умолчанию.

Как я могу получить эту работу, чтобы добавлять товары в мою корзину, в каком магазине я сейчас нахожусь?

Заранее спасибо

<?php
require_once 'app/Mage.php';

Mage::app();

Mage::getSingleton('core/session', array('name'=>'frontend')); // Session erzeugen         

$Cart = Mage::getSingleton('checkout/cart'); // Instanz zum Warenkorb

for ($count=1; $_POST['sku'.$count]!=''; $count++) {

$sku = $_POST['sku'.$count];
$qty = $_POST['qty'.$count];
$catprod = Mage::getModel('catalog/product');
$product_id = $catprod->getIdBySku($sku);

if ($product_id) {

    $ProdObj = Mage::getModel('catalog/product')->setStoreId(Mage::app()->getStore()->getId())->load($product_id); // Produkt laden

    $Cart->addProduct($ProdObj, $qty); // Produkt in den Warenkorb einfügen  

    Mage::getSingleton('checkout/session')->addSuccess('Artikelnummer "'.$sku.'" wurde '.$qty.'x hinzugef&uuml;gt.');

} else Mage::getSingleton('checkout/session')->addError('Artikelnummer "'.$sku.'" wurde nicht gefunden.');
}
$Cart->save(); // Warenkorb speichern   

Mage::getSingleton('checkout/session')->setCartWasUpdated(true);

header('Location: '. Mage::getUrl('checkout/cart')); 

?>

1 Ответ

0 голосов
/ 28 марта 2012

Вы можете получить идентификатор магазина по продукту, как показано ниже:

$productModel = Mage::getModel('catalog/product');
$product_id = $productModel->load($object->getId());
$store_id = $product_id->getStoreId();
...