Though Drupal 6.x has some built-in multilingual support, not everything is yet multilingual/translatable. This package tries to fill the gaps that still exist to build multilingual sites with Drupal. In the collection, each module addresses a specific functionality. The main features provided by these modules are the following:
- Multilingual variables
- Translatable user defined strings: Menu items, taxonomy content type names and descriptions, etc...
- Language selection: Only content in the selected language is displayed for each page view.
- Several selection modes are available for content, meaning you can have node lists for only the current language, for current and default languages, all languages, etc.
- Profile: Translates profile field names and descriptions in every language
- Polls: Provides an aggregated view and results block for votes in all languages
- Some, still limited, Views and CCK support
- Language can be set up for vocabularies or terms, or terms can be localized
- Both multilingual vocabularies with terms in multiple languages and single-language vocabularies can be created
- Translations can be defined between terms in different languages
This section includes information regarding resources for internationalization (apart from translation).
Right to left support
If you want a website with right-to-left text direction, you'll need a theme which supports this, like the core theme Garland for 6.x, or Garland BIDI for 5.x. For more RTL themes, look at the theme download page.
Other internationalization challenges
There are numerous other challenges when creating websites for a specific part of the world or language group, like date formats, alphabetic sort of special characters, currencies, and tax calculations. See the links below for places to look for more information, and please add a sub page if you have something to share.
- Localization API (translation and localization information for developers)
- Translation support forum
- List of support sites in various languages
- groups.drupal.org - Internationalization (for content translation and other internationalization issues)
When the Content Translation module is enabled you can translate site content into different languages. Working with the Locale module (which manages the enabled languages and provides translation for the site interface), the Content Translation module is key to creating and maintaining translated site content.
Configuring content translation
- Navigate to the Permissions page (Administration > User permissions in Drupal 6, or Administration > People > Permissions in Drupal 7) and assign the “translate content” permission to the appropriate user roles.
- Navigate to the Languages page (Administration > Settings > Language in Drupal 6, or Administration > Configuration > Regional and language > Languages in Drupal 7) and add and enable desired languages.
Enabling translation support for a content type
- Navigate to the Content types administration page (Administration > Content > Types in Drupal 6, or Administration > Structure > Content types in Drupal 7).
- Select a content type you want translated, and select "edit", then "Workflow settings" for Drupal 6 or "Publishing options" for Drupal 7.
This list doesn't intend to be a full listing of Drupal sites using the i18n module, but rather a collection of some sample sites.
- Canadian Treatment Action Council, English and French
- Christian Assemblies International, 8 languages!
- FivePaths, i18n + icanlocalize brochure site using English and Spanish
- Industrial Workers of the World, a union's site with 16 languages
- Khmer Software Initiative in English and Khmer
- QC Parawood company site in English, Japanese and Thai
- Reyero.net, the website of the i18n package author
- True BoxShot, software for virtual boxshots & covers creation. English & German localizations.
- WiFiHR, wireless network in Croatia
- AMNESTY, Amnesty International is a worldwide movement of people who campaign for internationally recognized human rights for all.
- Disorganized Trips, pictures and stories about traveling
This is a complete manual and step-by-step guide for building multilingual websites with Drupal and the Internationalization (i18n) package.
Drupal 7.x has some built-in multilingual support to provide a localized user interface and translatable content. However, not everything is yet localizable/translatable. This package tries to fill the gaps that still exist. A few of the important features which the Internationalization package provides are:
- A proper multilingual menu system
- Multilingual blocks
- Multilingual taxonomy
The features of the Internationalization package are broken into submodules, which are documented in the submodules section of this manual. You should generally not enable all of the Internationalization package submodules but, instead, enable them as you need them.
When enabled, the Locale core module allows you to present your Drupal site in a language other than the default (English). You can use it to set up a multilingual web site or to replace the elements of the interface text with text which has been customized for your site. Whenever the Locale module encounters text, it tries to translate it into the currently selected language. If a translation is not available, the string is remembered, so you can look up untranslated strings easily.
For Drupal 6 and 7, you can install the Localization Update module to automatically retrieve translations from http://localize.drupal.org. For languages where translation has already been done, you do not have to do anything other than set up this module. This module will be included in Drupal 8 core.Read more