Правильная настройка выбора и определения языка пользователя
Если кто-то посещает ваш сайт Drupal, вы хотите, чтобы ваш сайт отображался на предпочитаемом пользователем языке. Для этого вам необходимо определить это предпочтение. Вы можете настроить это в разделе « Конфигурация» > «Язык и региональные стандарты» > «Языки» > «Обнаружение и выбор».
Как вы это настраиваете, в основном зависит от требований сайта. Во всех проектах, над которыми я работал, язык определялся либо по пути, либо по доменному имени. Языковые предпочтения можно определить по доменному имени, которое посещает пользователь, показывая только узлы на языке, соответствующем расширению домена (.com показывает английское содержание, а .ru показывает русский контент). Другой способ — использовать путь, где имя домена остается прежним, но / en / или / ru / вставляется в URL-адрес. При желании вы можете включить переключатель языков, чтобы пользователи могли переключаться между языками, изменяя имя домена или путь.
Чтобы настроить ваш сайт Drupal таким образом, включите только URL-адрес в качестве метода обнаружения. Обратите внимание, что выбранный язык включен по умолчанию и не может быть отключен, и это нормально. Также перетащите метод определения URL-адреса в верхнюю часть списка.
Если ваш сайт Drupal в основном обслуживается пользователями, вошедшими в систему, может быть лучше использовать User в качестве метода обнаружения, чтобы пользователи могли установить свой язык в своем профиле пользователя.
Как настроить многоязычные представления и удалить дубликаты
Когда вы создали представление с узлами, вы хотите показать только те, которые доступны на языке, который предпочитает пользователь. Например, если пользователь переходит на страницу обзора блога на английском языке, имеет смысл показывать только те узлы блога, которые написаны на английском языке. И если пользователь переходит на русскую версию той же страницы, должны быть видны только блоги на русском языке.
Первое, что вам нужно сделать, это отфильтровать представление на языке, который в данный момент просматривается пользователем. Вы делаете это, добавляя критерии фильтрации к вашему представлению. Выберите «Содержимое: язык перевода» и установите флажок « Язык текста интерфейса, выбранный для языка страницы ниже». Это обеспечит отображение только тех узлов, которые доступны на языке, выбранном пользователем.