2013-04-08 2 views
3

У меня есть Magento 1.7.0.2Magento язык переключатель магазин код Urls

Моя проблема в переводе языка из магазина.

Я включил mod_rewrite и включил код хранилища для URL-адресов. Но языковой переключатель работает неправильно. Пример: http://mysite.com/en/ - По умолчанию страница

Когда я хочу изменить язык на французском URL-адрес в языка переключатель выглядит: http://mysite.com/en/?___store=fr

И оно не работает я обнаружил, что переключатель находится в:

app/design/frontend/default/mytheme/template/page/switch/languages.phtml

Но я не знаю, как изменить код, чтобы он работал правильно.

Когда я хочу изменить язык, необходимо указать этот URL: http://mysite.com/fr без ?___store=fr. Спасибо заранее.

+1

Решил. Проблема была в языках.phtml, потому что это был файл темы, поэтому я изменил его по умолчанию. теперь все работает правильно. –

ответ

8

Если посмотреть в /app/code/core/Mage/Core/Model/Store.php вы видите следующую функцию:

общественная функция getCurrentUrl ($ fromStore = истина)

Так без изменения основного кода грейфер /app/design/frontend/base/default/ template/page/switch/languages.phtml

Изменить линию

<option value="<?php echo $_lang->getCurrentUrl() ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option> 

к

<option value="<?php echo $_lang->getCurrentUrl(false) ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option> 

и поместить измененный файл в соответствующий путь к папке темы.

И теперь у вас есть чистые URL-адреса.

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