Как и прежде, модуль многоязычной поддержки входит в пакет модуля Админпанель. Но в версии 1.2.98 была сделана одна небольшая доработка, немного облегчающая жизнь тем, кого эта тема (многоязычные сайты на базе ЛС) интересует.
А именно — если раньше выбранный пользователем язык сохранялся только на время сессии, то теперь его можно сохранять в куках. Т.е. выбрал юзер свой язык, отличный от установки LANG_CURRENT, и этот выбор (если заданы соответствующие установки) будет действовать и при последющих заходах юзера на сайт с этого компьютера.
Как это сделать? Открываем файл /config/modules/language/config.php и задаем параметр:
define('LANG_SAVE_DAYS', 365);
Число указывает, сколько дней будет храниться выбранный язык.
И еще один вопрос часто задают: а как сделать выбор языка? Мне казалось, что я достаточно подробно об этом писал здесь: livestreet.ru/blog/2109.html. Но, видимо, нужен конкретный пример, как организовать «мультиязычность». Поэтому вот вам пример на базе скина new.
1. Открываем шаблон header_nav.tpl
2. Находим форму поиска
Теперь над полем поиска у вас появятся два флажочка — российский и британский, при клике на которые юзер будет переключаться соответственно на русский или английский язык.
ЗЫ Прошу гуру за говнокод не пинать, т.к. это всего лишь пример. Хотя и вполне рабочий. :)
ЗЗЫ А кртинки с флажочками, нужными для работы примера реально лежат в папке /templates/language/flags/
Вопрос. Как сделать, чтобы страница «О проекте» выводилась в том языковом варианте, который выбран пользователем, при условии, что все реализовано так как у вас в посте, и страничка на втором языке уже подготовлена.
Более-менее просто возможен только один вариант реализовать: в шаблоне анализировать язык и подставлять нужную ссылку, напр., about_ru или about_en. Соответственно должны быть две разные страницы созданы с этими урлами, она на русском языке, другая — на английсокм.
Ну я конечно понимал и раньше, что нужно анализировать какой сейчас язык включен, но вот как это сделать технически(((
Не могли бы вы, написать это, а то на сайте как-то дико, используется 2 языка, а статические страницы только на русском((
4 комментария
Буду очень благодарен за помощь
Не могли бы вы, написать это, а то на сайте как-то дико, используется 2 языка, а статические страницы только на русском((