Подробная инструкция по созданию мультиязычного сайта на Joomla 4/5: установка языков, настройка языковых плагинов, настройка меню и модулей для переключения языка, а также советы по управлению стилями шаблона для каждого языка.
Установка языков
После того как вы определились с нужными языками, их нужно установить.
Автоматическая установка
- Перейдите в Система → Установка → Языки.
- Установите необходимые языки, нажимая на кнопку Установить.
Ручная установка
- Скачайте языковые пакеты с официального сайта Joomla Language Packages.
- Загрузите и установите файлы через Система → Установка → Расширения.
- Опубликуйте загруженный язык в Система → Управление → Языки контента.
Активация языковых плагинов
Для корректной работы мультиязычного сайта требуется настроить и опубликовать соответствующие системные плагины Joomla.
- Перейдите в Система → Управление → Плагины.
- Найдите и включите плагины:
- Система - Подмена кода языка
- Система - Фильтр языка
Настройки плагинов
Система - Фильтр языка
После включения данного плагина настройки по умолчанию обеспечивают нормальную работу мультиязычности сайта. Обычно их изменять не требуется.
- Язык для посетителей
- Язык сайта или язык браузера. Определяет, какой язык будет применен для посетителей сайта: язык сайта по умолчанию, либо автоматически определять его на основе настроек браузера пользователя.
- Автоматическое переключение языка
- Эта опция позволяет менять язык контента на сайте автоматически, если пользователь меняет язык сайта на другой (влияет на отображение на главной странице).
- Связи элементов
- Активация опции позволяет устанавливать связи между пунктами меню, материалами и категориями на различных языках, чтобы указывать поисковым роботам, что у страницы есть альтернативная версия на другом языке.
- Добавление метатега alternate
- Активирует добавление метатега alternate для пунктов меню, которым установлены связи.
- Добавление значения x-default
- Если пользователь не использует язык, представленный на сайте, он будет направлен на версию сайта, установленную в опции Язык для x-default.
- Язык для x-default
- Выбор языка по умолчанию, который будет использоваться, если язык пользователя не соответствует ни одному из установленных.
- Удаление кода языка из URL
- Включение этой опции уберет языковой префикс для языка сайта по умолчанию, например: web.site/en. Для всех остальных языков префикс останется. Желательно оставлять префикс и для версии сайта по умолчанию, это улучшает SEO и более очевидно указывает пользователям, что сайт мультиязычный.
- Время жизни cookie
- Срок действия cookie для языка: можно выбрать, чтобы они истекали либо по окончании сеанса, либо через год.
Система - Подмена кода языка
Если версия вашего сайта ориентирована на конкретный регион, в этом плагине Joomla можно задать код языка для этого региона, что улучшит видимость сайта в поисковых системах.
Язык для существующих элементов
После включения языковых плагинов Joomla для категорий, материалов и пунктов меню станет доступна опция Язык, а также вкладка Связи, для модулей только Язык.
По умолчанию для всех элементов контента опция Язык имеет значение Все, что делает эти элементы доступными для всех языков, поэтому первым делом необходимо назначить язык существующим элементам. Сделать это можно быстро, используя функцию Пакетная обработка.
- Перейдите к списку элементов (материалов, категорий или пунктов меню).
- Отметьте все элементы, для которых в дальнейшем потребуется создавать связанные элементы на другом языке/языках.
- В панели инструментов кликните Действия → Пакетная обработка.
- В опции Установить язык выберите нужный язык (если элементы на русском, то Russian) и нажмите Выполнить.
- Теперь все эти элементы будут доступны, если на лицевых страницах включен соответствующий язык (с помощью модуля Переключатель языка, или автоматически, в зависимости от настроек плагина Фильтр языка).
Многоязычные связи
После установки языка уже существующим элементам необходимо создать альтернативы этих элементов для другого языка/языков.
Кроме обычного способа создания элементов контента, их можно создавать через компонент Многоязычные связи. Этот компонент становится доступен после включения плагина Фильтр языка и позволяет редактировать контент двух версий элемента на одной странице, что очень удобно.
- Перейдите в Компоненты → Многоязычные ассоциации.
- В фильтре выберите Тип контента и Язык.
- Из появившегося списка элементов кликните по тому, для которого хотите создать связанный элемент на другом языке.
Создание модуля переключателя языка
- В Контент → Модули сайта создайте новый модуль Переключение языков.
- Настройте модуль и выберите его позицию.
Модули для разных языков
Для модулей так же, как и для других элементов ядра Joomla, можно определять язык, для которого они должны быть задействованы. Кроме этого в настройках модулей можно настраивать привязку к определённым пунктам меню.
Стили шаблона Joomla для каждого языка
Если на сайте не используется стандартный шаблон Cassiopeia, возможно вам потребуется создать и настроить стиль шаблона для каждого языка отдельно. Это позволит точно контролировать отображение элементов сайта для разных языков:
- Отображение пунктов меню: каждому языковому стилю можно привязать своё меню, чтобы посетители видели только те пункты, которые соответствуют выбранному языку.
- Настроить уникальный контент в заголовках и подвале: если у сайта есть информация, специфичная для определённых стран или языковых групп, разные стили помогут добавить нужные данные в области шапки и подвала для каждого языка.
- Оптимизировать пользовательский опыт: разные стили позволяют адаптировать сайт под культурные и региональные особенности, что улучшает восприятие сайта аудиторией.
Обязательно укажите, для каких страниц/пунктов меню привязывается тот или иной стиль шаблона Joomla.
Упоминаемые термины:
Joomla, Компонент, Модуль, Плагин, Стиль шаблона, Шаблон, Ядро, SEO, Куки, Внешний интерфейс, Cassiopeia