переключить магазин без параметра GET в Magento - PullRequest
0 голосов
/ 23 мая 2011

Я хотел бы сделать невидимое перенаправление из магазина в другой (я настроил мульти-магазин) в мой модуль, сейчас я использую этот фрагмент, но он показывает параметр GET:

echo '<p><a href="' . Mage::getUrl() . '?___store=' . $store . '">pick up this restaurant</a></p>'

Как мне этого добиться?

Thx

Ответы [ 5 ]

11 голосов
/ 21 марта 2013

Вы должны установить COOKIE для магазина

Например:

Mage::app()->setCurrentStore($storeViewId);
Mage::app()->getCookie()->set(Mage_Core_Model_Store::COOKIE_NAME, 'de', TRUE);

de = Store code.
3 голосов
/ 23 мая 2011

Может быть, вы могли бы использовать формы (метод сообщения), и в соответствии с обработанными данными, установите хранилище: Mage::app()->setCurrentStore(store_id)

2 голосов
/ 23 мая 2011

Вы можете поместить код хранилища в файл cookie и выполнить проверку index.php, чтобы увидеть, существует ли файл cookie, если он существует, то он загружает хранилище своим кодом, если не показывает хранилище по умолчанию.

2 голосов
/ 23 мая 2011

Использование формы POST означает, что при использовании кнопки «Назад» клиенты могут увидеть раздражающее сообщение «Эта страница должна быть обновлена» в их браузере. Другим способом было бы перенаправить с www.example.com/?___store=1 на www.example.com во время некоторого раннего события, скажем, во время предварительной диспетчеризации контроллера. Перенаправление только при наличии параметра ___store.

Лучше было бы иметь разные домены для каждого магазина. Это полностью исключает параметр ___store и обеспечивает определенную обратную связь с клиентом о том, что он находится на правильном сайте.

1 голос
/ 23 мая 2011

Добавьте код магазина в URL, вы можете включить его со страницы администратора

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...