Задача:
На многоязычном сайте нужно на главной странице нужно вывести ноду, которая при смене языка сайта тоже будет меняться на соответствующий перевод.
Решение
На сайте должна быть установлена многоязычность и возможность делать перевод нод.
Далее нужно:
- Открыть нужную ноду для редактирования и указать путь: "home".
- Сделать тоже самое для всех переводов, используя в качестве пути то же самое значение "home"
- Открыть страницу "О сайте" admin/settings/site-information и указать путь к главной странице "home"
- Сохранить настройки и проверить переключение языков на главной.
Пример работы этого решения:
- http://devdrupal.ru/
- http://devdrupal.ru/en
- http://devdrupal.ru/uk
Возможные проблемы
Если вы получили такое сообщение:
user warning: Duplicate entry 'home-en' for key 2 query: UPDATE url_alias SET src = 'node/126', dst = 'home', language = 'en' WHERE dst = 'home' in /home/ ... /modules/path/path.module on line 108.
То это значит, что вы уже использовали такой синоним пути, но для страницы нейтральной к языку.
Вы можете попробовать менять синонимы путей напрямую тут: admin/build/path. Найдите ваш синоним пути и удалите его, если в колонке языки указано "Все".
Вывести на главной ноду всегда на одном языке
Чтобы на многоязычном сайте вывести на главной ноду всегда на одном языке нужно на странице admin/settings/site-information указать не синоним пути, а системный путь к ноде:
node/10
Использованные материалы:





































Комментарии
А проблем с локализацией меню не возникало? Недавно делал сайт по такому же алгоритму, и возникала проблема с тем, что пункт "главная"(home) не переводился при переключении языка. И, судя по форумам, не только у меня
Специально для вас провел эксперимент и результат описал в рецепте: Перевод ссылки "Главная" в меню в зависимости от текущего языка
Видимо проблема была в , больше различий не заметил. Спасибо
Видимо проблема была в <front>, больше различий не заметил. Спасибо