I'm not using the Entity Translation but only the i18n modules.

For example in the main menu I want to translate "contact us". So in the German translated menu do I need to give the nid of the German version of English node "contact us" ? Or the original English version one?

EDIT: In the figure node/59 refers to English node while the German version is node/800. So for German menu("contact us") which one do I need to feed? node/59 or the node/800. I fed node/59 for all the translated menu items but then they'd all redirect to English one. I thought that i18n should be able to figure and select the translated node automatically. Looks like I'm missing something.

enter image description here enter image description here

2 Answers 2


First off, the modules that you mentioned are just fine. You need to edit the menu and specify in the translation options fieldset:

  • Either "Translate and localize", which essentialy means that you can keep translated menu items in the same menu
  • Or "Fixed Language", which means that the whole menu is fixed on ione language, so you would need a second menu for a second language and so on.

If you select the "Translate and localize" option, which I would usually prefer, then you add a normal menu item say in English, and then in the list of menu items there will be an operation available for each one of the menu items named "translate". This is where you select the translated language of a second menu entry. Alternatively, you can access translate for within the menui item edit itself.

The idea is that each menu item has its language specified, so when you give the node/nid of a different language (or canonical url of any language) it shouldn't matter, provided that you have linked translated content (nodes) as well in the content administration.

  • I've selected "Translate and localize" but if I give same nid of English nodes to all the translated menus it takes them all to english pages. So now in each translated menu I've given nid of that translated "contact us" page.
    – AgA
    Feb 14, 2014 at 11:59
  • "provided that you have linked translated content (nodes) as well in the content administration"
    – Wtower
    Feb 14, 2014 at 12:11
  • I've updated the image to explain better
    – AgA
    Feb 14, 2014 at 12:14
  • I understood perfectly and I answered the point that you emphasize, as I believe, in my last paragraph. Apologies if I still miss something.
    – Wtower
    Feb 14, 2014 at 12:17
  • 1
    It is working as you've written. Don't know why it but wasn't working earlier
    – AgA
    Feb 15, 2014 at 10:09

In Drupal 7 you can use Locale core module to translate.

Locale : Adds language handling functionality and enables the translation of the user interface to languages other than English

  • After enabling the Locale module , add German language using admin/config/regional/language.

    enter image description here

  • Use English words to create menus.

  • After creating the menus use admin/config/regional/translate/translate link to translate English string to German.

    • Search for the string. I'm using About Us to translate. Click the corresponding edit link to translate.

      enter image description here

    • Enter German string

      enter image description here

  • Sorry, but I would not agree that this is the proper way to have a translated menu item, but it certainly is an alternative possibility.
    – Wtower
    Feb 14, 2014 at 11:05
  • I've asked a different question. I've added some more details.
    – AgA
    Feb 14, 2014 at 11:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.