Комментарии 7
Спасибо, дорогой автор! Как раз многоязычный сайтик заказали. Будет легче ориентироваться по вашим урокам.
Полезно, спасибо!
Курсоры мыши только смущают. Пару раз пытался их убрать.
Курсоры мыши только смущают. Пару раз пытался их убрать.
Недавно очередной раз столкнулся с необходимостью вывести меню на нужном языке в своей теме многоязычного сайта на Drupal 7. Как оказалось (после двухдневного гугления и применения бубна), надо писать не так, как советует подавляющее большинство источников:
а по-другому:
Если же пойти первым путём, то в выводимое меню попадут пункты на ненужных языках.
<?php print render( menu_tree('menu-name') ); ?>
а по-другому:
<?php print render( i18n_menu_translated_tree('menu-name') ); ?>
Если же пойти первым путём, то в выводимое меню попадут пункты на ненужных языках.
а чем вас не устраивает вывод стандартным блоком или superfish- ем
стандартным блоком или superfish
Это как? Можно поподробнее? Или хотя б — куда глядеть и чё читать?
Вариант типа «вывести левый сайдбар» не всегда подходит: например, на сайте, вокруг которого пришлось скакать с бубном, первая страница устроена совсем не так, как остальные и некоторые блоки находятся в других областях, не в тех, в которых они сидят на вторых страницах.
ну а если два разных блока меню создать… один блок будет отображаться на первой странице, а второй на остальных в другой области…
Не знаю, мы вывели меню блоком (модуль Menu block). Насчет superfish я поторопился, оказывается он не поддерживает мультязычность, хотя на друпаловском форуме предлагался какой-то хак, но разбираться лень было
Не знаю, мы вывели меню блоком (модуль Menu block). Насчет superfish я поторопился, оказывается он не поддерживает мультязычность, хотя на друпаловском форуме предлагался какой-то хак, но разбираться лень было
Если использовать первый способ из моего поста, то да, приходится прибегать к сторонним функция для получения меню, так как меню итемы дублируются, в этом и основной минус этого способа и всего модуля i18n в целом.
Но, если использовать второй способ из этого поста, то можно обойтись и стандартными функциями:
Но, если использовать второй способ из этого поста, то можно обойтись и стандартными функциями:
<?php print render( menu_tree('menu-name') ); ?>
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Мультиязычность в Drupal 7. Меню