Answer the question
In order to leave comments, you need to log in
D7: Creating menus in different languages via the Drupal/i18n API?
Hello!
There is a task: to create a small two-level menu for a site in six languages (the menu structure is the same in all languages).
I thought that I would do it through the Drupal API using a pack of the following pieces of code:
$item = array (<br/>
'menu_name' => 'menu-custom-main-menu', <br/>
'mlid' => 0, <br/>
'plid' => 0, <br/>
'link_path' => drupal_get_normal_path(''), <br/>
'link_title' => 'Home', <br/>
'hidden' => 0, <br/>
'external' => 0, <br/>
'expanded' => 0, <br/>
'has_children' => 0, <br/>
'weight' => 0, <br/>
'depth' => 1, <br/>
'language' => 'en', <br/>
'i18n_tsid' => 0);<br/>
<br/>
menu_link_save($item);<br/>
<br/>
... и всё работает, элементы меню добавляются, НО отображаются на всех шести языках несмотря на заданный в поле 'language' код языка.<br/>
<br/>
Если такой импортированный пункт меню открыть и сохранить через административный интерфейс Drupal, пункт начинает вести себя нормально и отображается только на версии сайта своего языка.<br/>
<br/>
ВОПРОС: может есть какой-либо другой <i>безболезненный</i> способ импортировать меню с учетом языка? Есть ли какая-нибудь функция из какого-нибудь API, которой я должен отдать импортированный элемент меню, чтобы в него прописались все необходимые языковые параметры/параметры доступа?<br/>
<br/>
Заранее спасибо! Очень надеюсь на помощь, тянется данная история третий день и никаких результатов :-|
Answer the question
In order to leave comments, you need to log in
Is the ability to translate the menu in the i18n settings enabled?
In d7 it is possible to manage menu blocks; in the block itself, it is possible to specify in which language locale it will be shown. Those. the simplest and fastest is to create a menu for each language; turn on the block with the menu in the desired language, with the desired output settings; darken the block with the menu.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question