Translating Drupal websites into multiple languages is very similar to visiting a foreign country. You have to spend time and money properly preparing documents, it's easier if you know the language and culture and you may find yourself stepping out of the comfort zone you are accustomed to. While translating Drupal websites into multiple languages sounds easy enough, there are many components that lead to time and cost overruns if not planned for. Differences in word length, right to left languages, properly handling string overrides, and customer data capturing are just a few things to think about. Here is my assessment of Drupal 6’s ability to easily translate websites:
Translating NodesTranslating Nodes was obviously the major focus of the Internationalization (i18n) module when it was released, and for good reason. Node translation is by far the simplest task to complete when translating a Drupal website. Once the i18n module is installed and languages to be translated are configured, you will notice the ability to choose a default language directly within the node edit page. Once you have selected a default language (example: English) and select save, you will then be provided with a new tab at the top of the node edit page called Translations. This tab allows you to then create new content for chosen languages and automatically associates those nodes together. Alternately, you can create nodes as you would for any page with no language specified, and then spend a significant amount of time mapping those pages together. I DO NOT recommend this process, but this is what will end up happening if you do not properly train your content editors to first select a default language, and then add additional languages through the Translation tab.
Translating MenusWith Drupal core alone, user defined menu items are not translatable. The i18n_menu (Menu translation) module (part of the i18n package) provides the following features:
- Allows setting a language when creating a custom menu item so that the menu item will only show up for that language.
- Localizes other custom menu items without language. Use the 'Translate interface' pages to translate these menu items.