This is a bit complicate to explain. I will try to keep it simple.

  • I have a multilingual site with EN, DE, ZH-HANS.
  • My default language for the site is DE.
  • The default for the admin site is EN (I find some of the German translations awful, and the fact that the menu order changes is too confusing).
  • I have a View with a Page display, configured to appear in the primary menu.
  • When I search, I find 2 instances for the menu text - one for the View module and one for the Menu. I translated both instances through the localization module from German to the other languages.
  • When I look at the strings in the translation interface, they appear correctly with their source being German and the English and Chinese translations present.

Problem: The German menu item display name is shown when the selected site language is EN or DE. It appears correcly in Chinese.

Theory: When I look at the view's page settings, the non-editable path contains the language prefix for EN (/en). I presume that this is because my default admin language is EN. Even if I change the site's display language from the default EN to DE (by changing the URL), the view's path still shows the English prefix on the View administration screen. Because of this, Drupal thinks that my menu item is in English, even though I gave it a German name (because my default language is German).

Attempt to prove my theory: I changed the admin site default language to DE, making them both DE now. The View's path now does not contain language prefix. Still no luck. The German version shows up on both the English and German sites. Because I keep reading that changing the default language is a no-no, I don't know if I should expect anything else.

I also tried to pin my menu to the language and create three versions, but the link title does not accept multi-byte text and the Chinese version is garbled. I apparently have to use the translation interface. So I am out of ideas. How can I fix this?