Организация многоязычности в Joomla

Мы живем в веке информационных технологий, когда люди из разных стран стремятся налаживать диалог друг с другом, будь то президенты транснациональных корпораций, средний бизнес или люди, объединенные общими и интересами. Потребность в обеспечении многоязычности на сайтах возрастает. Joomla! изначально позиционировалась как международный проект, однако в версиях 1.0 и 1.5 не была предусмотрена возможность перевода содержимого на дополнительные языки без применения сторонних расширений типа Joom!Fish, в то время как у основных конкурентов Joomla! возможность многоязычности была предусмотрена «из коробки» как базовый функционал.

Итак, для организации перевода вам необходимо убедиться, что в системе установлено более одного языка. Как правило, это English-UK (по умолчанию) и установленный Вами ранее русский пакет локализации Russian (Русский-СНГ).

Пример организации многоязычности

Этап 1: категории

Прежде всего, начнем наш фокус с создания категории. Идем в менеджер категории и создаем новую категорию с немудрёным названием Тестовая категория. Язык категории устанавливаем Russian. Нажимаем на «сохранить и создать» и вводим название категории как Testing category, назначаем язык English-UK и сохраняем. Теперь у нас есть по категории в каждую языковую версию.

Этап 2: материал

Ну что, пора создать материал. Идём в менеджер материалов и создаем новый материал с названием Тестовый материал и назначаем ему русский язык. Выбираем категорию под названием Тестовая категория и в поле содержимого пишем что-нибудь в духе:
«Раз-два-три-четырь-пять, вышел зайчик погулять».

Сохраняем и создаём новый материал под названием Testing article, назначаем ему английский язык. По аналогии выбираем соответствующую категорию под названием Testing Category и в поле содержимого пишем что-то вроде:
«Lorem Ipsum Dolor Sic Amet…».

Сохраняем. Теперь у нас каждый материал назначен в соответствующую его языку категорию.

Этап 3: меню.

Мы уже подбираемся к цели. Теперь нужно создать пункт меню, ведущий на страницу с содержимым. Идёмте в менеджер меню. Здесь нужно создать пункт ссылку на материал -
Материалы > одиночный материал (Articles / single article).
Справа выбираем из списка материал под названием Тестовый материал и в настройках назначаем Русский язык. Сохраняем изменения и создаем новый пункт меню на одиночный материал под названием Testing article, назначаем в настройках пункта меню язык English и сохраняем. Отлично, большую часть работы мы уже сделали!

Этап 4: настройка модуля и плагина

Этапами ранее мы организовали материал на двух языках. Теперь остается добавить в лицевую часть сайта возможность выбора между языковыми версиями и осуществить небольшую настройку. Идём в расширения > менеджер модулей.

Создаём новый модуль и выбираем Language Switcher (модуль выбора языка). Рассмотрим его настройки.

  • Заголовок – здесь можно ввести заголовок модуля, например Выбор языка.
  • Позиция – выбор позиции шаблона, в котором будет выводиться модуль. Например left.
  • Статус – выбор статуса публикации (опубликовано / неопубликовано).
  • Доступ – выбор группы пользователей из списка, для ограничения доступа. По умолчанию установлен общий доступ.
  • Порядок – в выпадающем списке представлен порядок модулей, опубликованных в выбранной позиции. Можно выбрать за каким модулем будет следовать ваш не выходя из режима редактировария.
  • Показать заголовок – режим, отвечающий за показ заголовка в лицевой части сайта (да / нет).
  • Начало публикации – здесь можно указать время, начиная с которого модуль будет автоматически опубликован. Пропускаем.
  • Окончание публикации – возможность определения даты и времени для автоматического снятия модуля с публикации. Пропускаем.
  • Язык – выбираем язык модуля. Пусть будет Русский язык.
  • Заметка - заметка, отображающаяся напротив редактируемого модуля в списке модулей. Носит вспомогательное значение на случай, когда вебмастеру нужно быстро записать свои мысли.

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

Начальные опции

  • Пре-текст – поле для ввода текста, который будет отображаться в модуле на лицевой части сайта над выбором языков. Давайте введём пример: Пожалуйста, выберите язык.
  • Пост-текст – поле для текста, который по аналогии с предыдущим режимом будет отображаться на лицевой части сайта под выбором языков.
  • Использовать изображения флагов – этот режим позволяет включить отображение флажков для выбора нужного языка. Если режим выключен, то выводится список с названием языков. По умолчанию параметр выключен.

Пример:

  • Пожалуйста, выберите язык.
  • English (UK)
  • Русский (RU)

Сохраняем модуль и создаем новый. Настраиваем по аналогии с предыдущим, только с учетом локализации на английский язык – модуль называем Language Switcher. Выбираем язык English. Назначаем модуль на пункт меню Testing Article.

Следует учесть, что для успешной работы многоязычности сайта нужно, чтобы системный плагин System – language filter был опубликован. Иначе это может привести к нежелательным результатам. По умолчанию плагин снят с публикации, поэтому на завершающем этапе следует проследовать в расширения > менеджер плагинов и опубликовать плагин System - language filter.

Теперь идём в лицевую часть сайта и наслаждаемся проделанным результатом.

Послесловие

Мы научились создавать материалы на разных языках. Теперь языковые версии могут совершенно отличаться и не зависеть друг от друга и наполнение сайта будет зависеть только от вашей фантазии. Единственное неудобство – при переключении между языками всегда будет открываться стартовая страница вместо языкового аналога, как это делает Joom!Fish. Плата же за такое неудобство – высокая скорость работы системы, поскольку фунционал многоязычности заложен в Joomla! 1.6 по умолчанию и не требует дополнительных ресурсов.