#translatable
Translatable module is a different approach on Internationalization and Localization. It is based on the fact that any translatable content in Drupal is input via forms that have been built with the Forms API.
Any form item can have the property #translatable. If that property is set to FALSE, the contents of the form item cannot be translated. If it is not set, Translatable module assumes that it can be translated. If it is set to TRUE, Translatable module automatically retrieves and displays the source contents to translate the form item's content.
For this purpose, it adds a layer between Forms API and database storage. Translatable uses two methods for data abstraction. These are:
- Generic translation objects, like blocks, menu items or taxonomy terms.
- Synchronized translations, like nodes.
Translation objects are stored as simple strings in the database. Source strings are currently replaced with localized strings using separate translation queries upon view. Any contributed module can make use of this translation method. Retrieving translated strings using db_rewrite_sql() is basically possible, however, not really supported by Drupal core - thus, still CNW.
Synchronized translations are relations between two objects that are in a translation set. For example, node/18 might be the German translation of an English source content in node/16. Synchronized translations are suitable for all contents that need to attach a language to build a "translation set". Because of that, nodes are the only contents that are synchronized currently. Translatable already implements the same node properties that can be found in Drupal 6.
Translatable provides support for most used Drupal core objects, i.e. nodes, blocks, menu items, and taxonomy vocabularies and terms. Due to its design, support for CCK-based nodes is built-in.
By speaking of Drupal 6: Though this module should work as claimed, do not expect any support for Drupal 5. If you want to give it a try, install it on a test site first. Top priority is to port Translatable to Drupal 6 and to create patches for Drupal 7 core as soon as possible.
By speaking of patches: Like Localizer, this module requires you to apply a patch against Drupal core to allow translation of blocks and taxonomies. Patches for all available official releases of Drupal core are included.
Translatable is partially based on the following modules:
- Localizer (Roberto Gerola)
- Internationalization (Jose A. Reyero, )
- Translation (Axel)
- Switchlang (Heine Deelstra)
- Translate (Rob Ellis)
If you intend to use this module on a live site, you probably want to checkout Transliteration module, too.
Dependencies
- Locale (Drupal core)
Installation
- Please see current README.txt.
Credits
Current maintainers:
This project has been sponsored by:
- UNLEASHED MIND
Specialized in consulting and development of Drupal powered sites, our services include installation, development, theming, customization, and hosting to get you started. Visit http://www.unleashedmind.com for more information.
Releases
| Official releases | Date | Size | Links | Status | |
|---|---|---|---|---|---|
| 5.x-1.3 | 2008-Apr-10 | 50.59 KB | Download · Release notes | Recommended for 5.x | |
| Development snapshots | Date | Size | Links | Status | |
|---|---|---|---|---|---|
| 5.x-1.x-dev | 2008-Apr-16 | 50.84 KB | Download · Release notes | Development snapshot | |
