Internationalization and localization make it possible to use CiviCRM in languages and cultural environments other than American English.
- Internationalization (i18n) is a set of mechanisms to make it possible to adapt (translate) CiviCRM to other languages without changing code.
- Localization (l10n) refers to using CiviCRM in another language than US English.
- Multi Language: using CiviCRM in many languages at once.
Use CiviCRM in your own language
To configure CiviCRM to use an existing translation:
- Download the translations distribution - civicrm-<version>-l10n.tar.gz - from the CiviCRM Sourceforge downloads site. This tarball contains all files for the latest available translations.
- Uncompress the tarball and you will see a directory called civicrm, containing two subdirectories called l10n and sql. The l10n directory contains a set of sub-directories named using their locale codes. (Example: the Canadian French translation files will located in /civicrm/l10n/fr_CA)
- Copy this l10n directory, together with all its subdirectories into your CiviCRM codebase root directory. (note if creating the l10n folder manually it should be ell-ten-n, not capital-I-ten-n)
- For Joomla this would be site_root/administrator/components/com_civicrm/civicrm. So if you wanted the en_GB language it would look like thissite_root/administrator/components/com_civicrm/civicrm/l10n/en_GB/ - For Drupal this would be site_root/modules/civicrm. So if you wanted the en_GB language it would look like this site_root/modules/civicrm/l10n/en_GB/
- Login to CiviCRM (as a user with "administer CiviCRM permissions").
- Go to Administer » Localization » Languages, Currency, Locations
- You should now be able to see and select all the localization options in the Default Language and drop-down menu. If you don't, and instead can just see the default 'English (United States)' option, check the preceding steps as the drop-down options are set by the directories under your l10n directory. Also be sure to confirm that the l10n directory is correctly named as l10n (that is: el-ten-en and not eye-ten-en).
- The other settings on this page are described below. You can review them and adjust as needed. Be sure to save your changes when you're done.
Your CiviCRM screens should now appear in the selected language. If the underlying server has the proper locale generated, the full and abbreviated month and day names will also be localised properly.
Any text that has NOT been translated in the translation files will appear in the default English language. If you see English text after setting a different language, you may need to add to the translation. Refer to the section on helping with CiviCRM localisations below.
The easiest way to translate CiviCRM is via our Transifex project.
Transifex is an online community of translators and is also a tool for translating free software such as CiviCRM. In many ways, it is the "github" of translation. You can use the web interface to join a translation team (or create a new one) and contribute to a translation.
When writing new application code or an extension, developers should organize their code in a way which is amenable to internationalization. Please visit the Developers Resources in this section for more information.