Magento Ajax добавить в корзину не работает для дочерних сайтов - PullRequest
0 голосов
/ 17 марта 2011

Я написал небольшой скрипт, который вызывается через ajax для добавления товаров в корзину.

$request = Mage::app()->getRequest();
$session = Mage::getSingleton('core/session', array('name'=>'frontend'));
$cart = Mage::helper('checkout/cart')->getCart();
foreach($pids as $pid){
    if(!pid || $pid == ''){continue;}
    $product = Mage::getModel('catalog/product')->load($pid);
    $cart->addProduct($product, $qty);
}
$session->setCartWasUpdated(true);
$cart->save();

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

Я пытался добавить addtocart.php в корень дочернего сайта (включая основные сайты mage.php), а также пытался добавить его в корень основного сайта, но ничего не работает.

Нужно ли где-то указывать идентификатор сайта?

Спасибо

1 Ответ

0 голосов
/ 17 марта 2011

Сначала выполните простой шаг настройки cookie-домена с префиксом одного периода.Это действует как подстановочный знак.

По умолчанию поведение не распространяется на корзины между магазинами.В вашем «маленьком скрипте» убедитесь, что при первой инициализации приложения выбран правильный магазин.

Mage::app($storeId);

Иногда при пересечении доменов вам необходимо включить SID в качестве параметра URL,Я не уверен, как вы могли бы найти это значение, возможно, со страницы реферера ..?

...