After this question on which module to use to handle interface translation I was expecting the setup of Locale to be pretty straightforward. I guess it is not.

Well, my backend and navigation menus got translated right away but the main objective (as you can see by reading the other question) was to allow any user to change language as needed.

So the goal is to setup the language switcher block in order that it is available to everyone.
Steps performed:

  • Enable module Locale
  • Setup language switcher block to appear at some area
  • Configured block to appear to all roles on every page
  • Added a new language and imported the .po file
  • Checked all locale permissions (except anonymous user -> translation)

Am I missing something?

2 Answers 2


You need to set the language negotiation.

  • Andy, once again, spot on! :-) Nice!
    – acm
    Commented Apr 5, 2011 at 14:59

I think the block only appears on pages which have translated content

  • Nope, that's not the case, and as I said, I've imported the .po file which translates most of the drupal core.
    – acm
    Commented Apr 5, 2011 at 14:53
  • allright, i really should read questions more slowly ;) my bad
    – 30equals
    Commented Apr 5, 2011 at 15:30
  • 1
    You are however not totally wrong. If you are using translation.module and you are on a node that is not translated in some languages, then these will not be displayed. See api.drupal.org/api/drupal/modules--locale--locale.module/… (note the drupal_alter) and api.drupal.org/api/drupal/…
    – Berdir
    Commented Apr 5, 2011 at 17:20

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.