Drupal und mehrere Sprachen – i18n


Das i18n Modul ist sehr mächtig, es hat jedoch meiner Meinung auch noch ein paar Macken. Ich habe vor einiger Zeit ein paar Kleinigkeiten in einer bestehenden Seite mit Übersetzung gebastelt und fand einige Dinge ein bisschen verwirrend.

In Drupal 6 soll es ja sowiel ich weiss zum Teil im Core drin sein. Da freue ich mich 🙂

Das i18n Modul besteht grundsätzlich aus 2 Teilen:

Internationalization Modul und translation Modul und dann gibt es auch noch das locale Modul, was jedoch im Core drin ist (auf jeden Fall in der 5er Version). Die Einsatzgebiete dieser Module sind klar abgegränzt:

Local: Übersetzung des Interfaces. So kann man Drupal in Deutsch, Englisch, Französisch usw haben. Dies hat jedoch noch nichts mit dem eigentlich Inhalt zu tun!

Internationalization: Ermöglicht mehrsprachige Inhalte. Wenn ein Node erstellt wird, so kann dieser einer bestimmten Sprache zugeordnet werden.

Translation: Wenn man eine Firmenseite hat, so will man einen Inhalt in mehrere Sprachen haben. Zudem will man zwischen den verschiedenen Sprachen hin und her Switchen. Das Translation Modul verknüpft Nodes in verschiedenen Sprachen miteinander und unterstützt den Admin mit dem Übersetzungsworkflow. Zum Beispiel: node 324 ist ein Inhalt in Deutsch. Jetzt übersetze ich diesen Node einige Tage später -> (wird zum node 354).  Je nach dem in welcher Sprache ich mich befinde wird entweder 324 oder 354 angezeigt.

Allerdings habe ich ein paar Problemchen gehabt:

1. Ich hatte einmal ein wenig mit einer zweisprachigen Seite gewerkelt. Da war jedoch das Problem, dass wenn man von einer Sprache auf die andere wechselte, dass man auf dem gleichen Node sitzen blieb -> sprich, die Sprache des Inhalts blieb in der alten Sprache, da man nachwievor auf node/xxx blieb.

2. "Dann wurden diese Terms noch gegenseitig als Übersetzung gekennzeichnet." Wie machst du das? 

niebegeg.net hat freundlicherweise eine Antwort darauf parat 🙂 Danke an dieser Stelle nochmals.

Antwort:

Zu 1.: Die i18N-Module bringen zwei "Language Switcher"-Blöcke mit, der eine heißt ebenso, der andere heißt "Translations" bzw. "Übersetzungen" und ist aus dem translations.module. Der arbeitet kontext-sensitiv und generiert korrekte Links auf die zugeordnete Seite in der anderen Sprache. Wenn das Modul aktiviert ist und man zwei Beiträge als "Translation" zueinander definiert hat, dann klappt das Umschalten und die Anzeige wechselt von node/123 auf node/124 (Beispiel Eye-wink). Außerdem bietet das translations.module an, im Fußbereich (im Links-Bereich?) eines Beitrags den Link zur Übersetzung des Beitrags einzufügen. Das kann man auch abschalten.

Zu 2.: Auch mit dem translations.module: Im Adminbereich findest Du in admin/content/taxonomy im Term Listing zu einem Vokabular auch den Tab "Translations". Dort kannst Du jeweils Begriffe aus beiden Sprachen als Übersetzung gegenüberstellen. Zuvor muss man jedoch zwei Begriffe jeweils als Begriff der einen und der anderen Sprache definieren, zum beispiel den Begriff "Sichtung" als "deutsch" und "Review" als "englisch". Im Tab "Translations" werden nur die Terms angezeigt, die als sprachabhängig markiert sind.
Allerdings hatte das Ganze bei mir nur Einfluss auf die Vorschlagswerte beim Freetagging: es wurden nur Werte ohne Sprachkennzeichnung und in der aktuellen Sprache vorgeschlagen. Die Tags wurden beim Umsachalten der Sprache an einem vorhandene Artikel nicht übersetzt :-/

Dies hat somit auch meine Meinung vom i18n Modul massiv verbessert. Es ist wirklich ein geniales Modul…