You are here

Drupal-Module in andere Sprachen übersetzen

Häufig findet man ein schönes Modul für Drupal, das genau die Funktion bietet, die man gerade sucht. Leider sind diese Module nicht immer eingedeutscht. Für Testumgebungen spielt das in der Regel keine Rolle, aber wenn das gewählte Modul in einer Produktivumgebung zum Einsatz kommt, wird der Kunde - zumindest im deutschsprachigen Raum - doch in aller Regel die Ausgaben dieses Modules in Deutsch sehen wollen. In solchen Fällen kann man entweder darauf warten, dass jemand anderes die Übersetzungsarbeit macht - was meistens einen ungewissen Projektendetermin zur Folge hat, oder man legt selbst Hand an, und übersetzt das Modul. Für die Versionen 5 und 6 von Drupal gibt es das Modul Translation template extractor, das eine .po-Datei liefert, die man direkt mit z.B. poEdit bearbeiten und übersetzen kann. Das geht ganz einfach:

 

  1. Man installiert das Modul Translation template extractor (auch potx genannt).
  2. Nachdem man das Modul aktiviert hat, steht in dem Modul "Lokalisierung" ein zusätzlicher Tab zur Verfügung: "Zeichenketten extrahieren".
  3. Klickt man den an, erhält man eine Liste aller installierten Module und kann auswählen, für welches Modul potx eine .po-Datei erzeugen möchte.
  4. Hat man seine Wahl getroffen, so bekommt man die entsprechende .po-Datei zum Download angeboten. Jetzt muss man nur noch...
  5. ... die Übersetzungsarbeit leisten. ;-)

Die Übersetzung gelingt ganz einfach mit poEdit. poEdit steht für zahlreiche Betriebssysteme zur Verfügung: Windows, Linux, Mac OS/X und auch der Source Code ist erhältlich. Das Programm wurde mit wxWidgets erstellt und ist damit auf jeder Plattform lauffähig,die wxWidgets unterstützt.

Nach dem Herunterladen und Installieren, startet man das Programm und lädt die zu übersetzende .po-Datei. Diese speichert man mit dem korrekten Sprachkürzel für die Sprache in die übersetzt werden soll - also de_DE für Deutsch.

Beispiel: Die Originaldatei heißt mein-modul_en_EN.po dann bekommt die deutsch Übersetzung den Namen mein-modul_de_DE.po.

Nun sieht man eine Auflistung aller Originalbegriffe und daneben die Übersetzungen. Noch nicht übersetzte Begriffe oder Texte werden fett hervorgehoben, so dass man leicht durch die ganze Datei gehen kann, um die Übersetzung zu vervollständigen.

Screenshot poEdit mit geladener .po-Datei

Hat man dies erfolgreich erledigt, speichert man das Ergebnis ab und lädt die .po-Datei in das Modulunterverzeichnis ../po des Modules zu dem die Sprachdatei gehört. Und schon steht die deutsche Übersetzung zur Verfügung.

Ein Hinweis zu Wordpress: dort funktioniert das ganze ähnlich. Man lädt, die zu übersetzende .po-Datei. Übersetzt die gewünschten Strings und lässt poEdit eine zusätzliche .mo-Datei erzeugen. Diese beiden Dateien (.po und .mo) lädt man in das Verzeichnis des Plugins, zu dem sie gehören und schon steht die neue Sprache in Wordpress zur Verfügung.