Language Switcher

2019-03-25 15:03
Written by
ayduns - member of the CiviCRM community - view blog guidelines

Do you want to use Civi in multiple languages? This new feature adds more options to enable users to access CiviCRM in their language of choice.

This feature allows admins to configure a list of languages for users to select from and set the language of the CiviCRM interface for their own use.  This translates the CiviCRM interface but does not translate content.  For example, the menus are translated but content and option values (eg Mr/Mrs) are not translated.

Users have a 'Language Switcher' block to make their choice, and the language can be specified in URL's.


  1. Install the localisation files if not already installed (currently See the Installation section in the System Administrator Guide
  2. Go to Administer > Localization > Languages, Currency, Locations
  3. If your site is already configured for Multiple Language Support, the rest of this does not apply: multi-lingual sites already provide a language switcher.
  4. If your site is configured to Inherit the CMS Language, the rest of this does not apply: language selection is controlled by the CMS settings.
  5. Assuming you have got this far, you should have an Available Languages box.  Select whichever available languages you want to include.  If none appear, check you have installed the localisation files correctly in step 1.
  6. Save


If more than one language has been made available, the Language Switcher block will be shown.

Links to Civi pages can specify the language to be used by adding eg '&lcMessages=de_DE' to the end of the URL.  The chosen language will remain active until another link changes it or the Language Switcher block is used.

How does this compare to multi-language mode?

In multi-language mode, the content of certain fields ("localizable fields") can be entered in multiple languages.  For example, if you want an event to be described in English, French and German then multi-language mode will do that.  Multi-language mode also enables the Language Switcher block - but the available languages are limited to those configured in the database.

This new option does not translate the content but does enable the interface to be accessed in multiple languages.  It has the advantage that there is no limit to the number of languages that can be made available, whereas multi-language mode is limited to about 5 languages.

Who would use this?

  • If you have staff wanting to access CiviCRM in their own language - this lets them do so easily.
  • Organizations that run events in multiple languages where each event uses a single language can describe that event in the chosen language and provide links to the event specifying the interface language - without the complexity and limitations of multi-language mode.
  • Non-English users seeking support on StackExchange or wanting to report issues can easily switch to English to capture screen shots or check terminology.

Is this the same as inheriting the language from the CMS?

No.  CiviCRM can inherit its language choice from the CMS - but that requires the CMS to be configured to support multiple languages.  The new option is independent of the CMS.  Your use case will determine which is the most appropriate option.

How can I improve the translation?

Read and then ask in the translation channel on chat.