2013-04-02 2 views

ответ

0

Существует несколько способов сделать это.

1) Включить код магазина в URL.

Magento позволяет вам добавить код магазина вашего магазина в URL. Например, если у вашего голландского магазина есть код dutch, и ваш немецкий вид магазина имеет код german, тогда Magento автоматически загрузит правильный магазин. domain.com/dutch загрузит голландскую версию, а domain.com/german загрузит немецкую версию вашего сайта. Недостатком этого решения является код магазина, добавленный даже для основного домена.

Настройки конфигурации можно найти в панели администратора (aka Back Office, BO)> System> Configuration> Web> Url Options. Там вы найдете опцию «Добавить код магазина в URL».

2) Редактировать .htaccess файл.

Если вы хотите избежать недостатка решения 1), вы можете изменить свой основной файл .htaccess. Добавьте запись, которая будет искать суффикс /german и загрузит немецкий код магазина. Вот небольшой пример (я не специалист в этом вопросе, но это должно быть что-то вроде этого):

SetEnvIf Host .*domain.com/german.* MAGE_RUN_CODE="german"

Вы можете играть с более .htaccess. Найдите в Интернете, если вы хотите узнать больше о .htaccess материалах.

3) Изменение index.php приложения

Это очень похоже на решение 2), но сделать это непосредственно в PHP. Найти

$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';

строку в index.php и заменить его чем-то вроде этого:


if (!$_SERVER['MAGE_RUN_CODE'] && strpos($_SERVER['HTTP_HOST'], '/german') !== false) { 
    $mageRunCode = 'german'; 
} else { 
    $mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : ''; 
} 

4) Добавить новую запись в виртуальный хост Apache.

Создайте новый виртуальный хост (vhost) для домена domain.com/german и разместите его SetEnv MAGE_RUN_CODE "german".

По моему мнению, лучшим вариантом является 2). Он является наиболее гибким, и вам не нужно менять какой-либо код. Для рабочей станции разработки 4) также будет достаточно.

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

Смежные вопросы