So far, I've added a language field to the menu table.
We need some interface here.
However it seems that the menu system is currently broken in HEAD so this will have to wait for now.

#1 localizermenu_translation.png75.24 KBRoberto Gerola
Members fund testing for the Drupal project. Drupal Association Learn more


Roberto Gerola’s picture


I've not yet taken a look at your code, but I would like to share with you the solution
that I have implemented in localizer.
Perhaps it could be of some inspiration for a better solution.

I've treated menu items as user provided strings and translated them through
the translation engine that I have implemented.
Then the translation is implemented at runtime through the hook menu.
If you are interested, you can read the code of the module localizermenu, method localizermenu_translate_all.

IMHO, perhaps is not necessary adding a language field to the menu table.
Adding a language filed, it means doubling the menu items, am I wrong ?

About interface translation, I have attached a screenshot of my current implementation.

The top interface is for English (the website's main language) , the bottom for Italian.
In Italian version you can translate only the title and description fields, the other fields
are disabled.
The top language switching combobox is separated for the content or user interface language
and it is used only for administration.

The same interface is used for translating taxonomy and variables.
For variables based forms I have implemented a generic translation interface
that can be used anywhere.

Hope this helps.



Jose Reyero’s picture

Hi Roberto,

IMHO, perhaps is not necessary adding a language field to the menu table.
Adding a language filed, it means doubling the menu items, am I wrong ?

I think this, adding a language field, makes sense if we actually want to be able to create different menu items for each language -which I'd like to... This should be more flexible than simply having 'translatable' menu items.

About string translation maybe we should be aiming at a generic solution that works for all user defined strings, thus also providing a common place to translate all the object's strings.

Btw, I'm also looking at localizer module searching for solutions we could reuse here...

Gábor Hojtsy’s picture

Project: Internationalization improvements for Drupal 6.x-dev » Drupal core
Version: » 7.x-dev
Component: Code » language system

Moving to Drupal 7 queue. We don't have a separate code repository now, so no reason to have this separated as if someone is working on it.

Jose Reyero’s picture

Issue tags: +i18n sprint
naxoc’s picture


plach’s picture

Version: 7.x-dev » 8.x-dev
Gábor Hojtsy’s picture

Status: Active » Closed (won't fix)

The modern solution for this is #916388: Convert menu links into entities. This is won't fix as-is.