Есть acquia marina 3.x, с ней как положено fusion, skinr
Возник вопрос, как можно при переключении (используем i18n модуль) языка вывести другое меню вместо примари меню, которое мы заготовим сами.
нашел код, по которому выводится примари меню в page.tpl.php:
<?php print theme('grid_block', $primary_links_tree, 'primary-menu'); ?>
переменная $primary_links_tree формируется в темплейте fusion:
<?php// Generate links tree & add Superfish class if dropdown enabled, else make standard primary links
$vars['primary_links_tree'] = '';
if ($vars['primary_links']) {
if (theme_get_setting('primary_menu_dropdown') == 1) {
$vars['primary_links_tree'] = menu_tree(variable_get('menu_primary_links_source', 'primary-links'));
$vars['primary_links_tree'] = preg_replace('/<ul class="menu/i', '<ul class="menu sf-menu', $vars['primary_links_tree'], 1);
}
else {
$vars['primary_links_tree'] = theme('links', $vars['primary_links'], array('class' => 'menu'));
}
}?>
Вопрос, как мне можно прописать функцию theme(...) в шаблоне page.tpl.php, чтобы мое меню menu-primary-links-fr отображалось при выборе соответствующего языка. Спасибо.
Комментарии
А зачем?
у меня разные ссылки в меню на разных языках
И? i18n позволяет любую ноду выбрать в качестве пепевода.
ну а по сабжу нет соображений? мне бы это было гораздо полезнее, ибо пытаюсь в API разбираться, то есть как сформировать подобную primary-links переменную для любого другого меню
up, сижу копаюсь в модуле i18n, что-то не особо получается (раньше делал просто разные меню и выводил их в зависимости от языка)
тип контента page я перевел (разные ноды), заголовки и прочее научился.
проблема в том, что пункт примари меню, к которому я привязываю ноду, после ее перевода, отображается в двух экземплярах (в моем случае 2 языка), то есть и на первом языке и на втором
как это лечить можно?
спасибо