Translation for Blocks, Menus and Taxonomy

Blocks, Menus and Taxonomy use string translation.

User interface is distinct from content. The menus or admin screens are part of the user interface, not content. It is necessary for the user to navigate the website, e.g. The Search button.

In Drupal there are over 4,000 strings, which are pieces of text of one word or a paragraph. Drupal has a string translation system. All English strings can be translated, if we wanted them to be. We can use translations others have already done.

Go to Site configuration, languages. You will see code, native name, direction (only Arabic goes right to left), default (each configuration will have a default language). The French will have only French, the Dutch only Dutch. Each site will have its own list of languages.

Go to Site Building, Translate Interface. Under Built in interface it tells how many strings are in English (483 at moment), for Arabic 1621 have been translated. The default is back to English. This is a user only interface, the language groups will decide on this.

Click on “Search” the box “String contains” is case sensitive. Copy and paste the text.
In languages – this helps to limit it.
Click built-in interface and click on search.

You will then be able to see the languages this is already translated into.

We will use menu translations only for menu items in user menus.

For the top menu we will have different menus for different languages.

Taxonomy translations

Each vocabulary can have one of four settings:
None. No multilingual options for this vocabulary
Localize terms. Terms are common for all languages but their name and description may be localized.
Per language terms. Different terms will be allowed for each language and they can be translated.
Set language to vocabulary
. The vocabulary will have a global language and it will only show up for pages in that language.

Some of our vocabularies will be set to the second option, which allows translation via the translation interface.

Multilingual blocks

A block can be assigned to language as follows:
All languages’ : it displays whatever language is active
All languages – Translatable’: the block displays in whatever language is active but the translated content of the Block body is displayed if there is one in the active language. (Note: the whole content of the block body is made into a translatable string, and if that text is updated the English string is updated, but of course not the translations.)
A specific language: in which case the block only appears if the language is active.

We can use Translatable blocks for some important blocks which appear in all languages (e.g. the In Brief block on homepage, but otherwise mostly language-specific blocks.) When adding a block webmasters shoud select only their own language, not All languages translatable!!

Here is an example:

Go to list of blocks and select in Brief and configure. You will see that it is in all languages (translatable) - the block displays whatever language is active but the translated content of the Block body is displayed if there is one in the active language. 

The block can be in all languages.

The content of the block body is content, but using string translation system. We want this block in all languages so we want it translated. There are 2 ways of doing this:
We could mark it as Engish, but it would only display on the English site, and not be translated. What would be better would be to have one block, made translatable. Therefore we would not have lots of blocks, but this will only display if translation exists, otherwise it would display in English. So use with care as mustn't forget to follow through with translations.

Go to Site building, translate, search – search in blocks and edit.

The Search form cannot be translated when you click configure, this was provided by Drupal.

Site building, menu
Top menu
If we have 7 languages, there are 7 top menus. Menus will be blocks, each set to language of top menu. The menu items are set to the language. If you add an item to the top menu, the French have to do the menu item and new page or translation of a page.

Brief overview of translation issues:
http://www.developmentseed.org/blog/2008/feb/26/drupal-i18n-saga-continu...