Wie bringt man einem englischsprachigen Theme die deutsche Sprache bei?
Die meisten deutschsprachigen WordPress-Anwender sprechen Englisch. Aber gilt das auch für die Leser? Voraussetzen wird man das nicht können, zumal dann nicht, wenn man sich an ein Publikum außerhalb der Bloggerszene wendet. Außerdem sieht es einfach besser aus, wenn da Schreibe einen Kommentar steht statt Leave a Comment und der Submit-Button mit Abschicken beschriftet ist.
Deutschsprachige Themes und plugins mit Codestyling Localization
Doch wie bringt man seinem Theme die deutsche Sprache bei?
In WordPress selbst wird die Lokalisierung mit Hilfe von GNU-gettext, d.h. PO-(Portable Object)- und MO-(Machine Object)-Dateien, durchgeführt. Die PO-Datei enthält einen Katalog der zu übersetzenden Strings (Texte) im Klartext, die MO-Datei die Übersetzungen in einem maschinenlesbaren Format. Auf sie wird im Live-Betrieb zugegriffen.
Bei guten Themes, die ihr Geld wert sind, geht es genauso. Sie sind ab Werk für die Lokalisierung mit gettext ausgestattet. Sind sie es nicht, bleibt nur die Möglichkeit, die Quelltexte selbst hardcodiert zu übersetzen, aber das ist nicht wirklich eine Option.
Ein paar technische Hinweise zur Lokalisierung für Theme-Entwickler gibt Simon Rimkus in seinem Tutorial »WordPress-Themes lokalisieren«.
Die Aufgabe besteht also jetzt darin, eine mo-Datei mit deutschen Texten zu erstellen.
Ein weit verbreitetes Tool zur Übersetzung von GNU-gettext-Dateien ist der Editor poEdit, den man herunterladen und lokal installieren muss. Die po-Datei wird vom Server heruntergeladen, übersetzt und dann wieder hochgeladen. Das ist umständlich und lästig, denn man kann das Ergebnis nicht sofort im Theme-Kontext überprüfen.
Ich wollte etwas schnelleres, das ein unmittelbares Ergebnis bringt, und habe mir deshalb das WordPress-Plugin Codestyling Localization von Heiko Rabe installiert.
Das »Codestyling Localization«-Plugin im Einsatz
Lokalisierung im Menü Werkzeuge
Das »Codestyling Localization«-Plugin wird heruntergeladen und installiert. Es benötigt keine weitere Konfiguration, legt keine neuen Tabellen an und kommt ohne eigene Werte in der wp_option Tabelle aus.
Um mit der Übersetzung beginnen zu können, brauchen wir erst einmal einen Katalog der zu übersetzenden Strings, d.h. eine PO-Datei. Für die Varietäten des deutschsprachigen Raumes sind das de_DE.po, de_AT.po oder de_CH.po. Ist so eine Datei schon im Theme oder Plugin vorhanden, findet »Codestyling Localization« sie automatisch, liest sie ein und bietet sie im WordPress-Administrationsbereich zur Bearbeitung an (Punkt Lokalisierung im Menübereich Werkzeuge). Auch die Sprachdateien von WordPress selbst werden gefunden. Wer also schon immer mit der ein oder anderen Formulierung seiner WordPress-Installation unzufrieden war, kann sie hier leicht ändern.
Ist das Theme zwar für die Lokalisierung ausgerüstet, hat aber noch keine deutsche Sprachdatei dabei, müsst ihr selbst eine erstellen. Dazu klickt ihr auf den Link »Neue Sprache hinzufügen« und wählt eine Sprache aus der Dialogbox aus. Diese so erstellte PO-Datei ist aber noch leer. Um sie zu füllen klickt ihr auf den Link »Einlesen«. Das Plugin durchsucht dann die Plugin-Quelldateien nach übersetzbaren Strings und speichert sie in der PO-Datei.
Tip: Auch wenn eine po-Datei vorhanden ist, kann es sich lohnen, mal auf den Einlesen-Link zu klicken. Der Katalog wird dann aktualisiert und es kann durchaus sein, dass man nachher mehr Strings drin hat als vorher. Codestyling Localization hat dann in den Quelldateien Strings gefunden, die noch nicht im Katalog enthalten waren, und hinzugefügt.
Eine Sprachdatei bearbeiten und einlesen
Das Übersetzen
Hat man die Vorarbeiten erledigt – was schneller geht als die lange Anleitung vermuten lässt – kann man mit der eigentlichen Übersetzungsarbeit anfangen.
Dazu klickt man auf den Link »Bearbeiten« und erhält ein Fenster mit zwei Spalten. In der linken Spalte stehen die Strings in der Originalsprache, in die rechte kommen eure Übersetzungen. Hat man einen oder mehrere Strings übersetzt, oder vielleicht sogar schon alle, kann man ganz oben links auf den Button »erstelle mo-Datei« klicken. Das Ergebnis, die oben schon erwähnte maschinenlesbare mo-Datei, steht dem System sofort zur Verfügung und man kann sich die Früchte seiner Arbeit in einem zweiten Browser-Tab ansehen.
erstelle mo-Datei
Und für alle, die jetzt gleich loslegen wollen, hier nochmal der Download-Link:
WordPress Plugin Codestyling Localisation
Related Posts
- Alle RichWP-Themes kostenlos – for free
- 2010 – Neues Default-Theme für Wordpress
- Buchreview: WordPress professionell einsetzen
Weil öfter danach gefragt wird: Mein WordPress-Theme heißt Thesis.

{ 16 comments… read them below or add one }
Prima Anleitung, aber wie zur Hölle übersetzt man ein Thesis-Theme?
Das erkläre ich in einem separaten Artikel auf ThesisWorld. Das wird sonst zu lang hier. Erscheint voraussichtlich morgen.
Super, ich bleibe gespannt!
Tolle Anleitung!
Huhu,
klasse Beschreibung!
Danke!!!
Habe gerade das PlugIn installiert und bin irritiert, warum es nur 3 von 10 installierten themes findet?
Kann man da was machen?
lg struupi
Besten Dank für die Erklärungen, fdb! Mal sehen aber ob bei mir das gut laufen wird.
LG
Hatte bislang im Code rumgeschrieben, um Kleinigkeiten von Templates zu ändern – das Plugin ist aber wirklich gelungen. Müsste nur noch eine Export-Import-Funktion geben (bzw. konnte ich nach kurzem Test noch nicht finden), um die po/mo Files aus dem Backend zu exportieren, extern zu übersetzen und anschließend wieder einzufügen. Muss ich mir nochmal genauer anschauen.
By the way – ein wirklich gutes Lokalisierungs-Tool für WP Seiten (Content) fehlt bislang. Nutze qTranslate, hat aber leider auch Schwächen, weil es die verschiedenen Sprachen in einem File unterbringt und der Wysiwyg Editor irgendwie damit Probleme hat. Na ja, vielleicht in der nächsten WP Vers
Eine Import/Export-Funktion gibt es. Man kann po-Files einlesen und mo-Files exportieren.
Vielen Dank, habe schon Stunden damit verbracht, WordPress-Themes italienisch beizubringen und dabei oft ziemlich umständlich in den php-Dateien rumgerührt (bin kein Programmierer oder Webdesigner). Sprachdateien ist noch schlimmer, insbesondere weil die ersten Übersetzungen ins Italienische oft ziemlich schwach waren. Mal sehen ob’s mit dem Plugin leichter wird.
Hey,
danke für diesen anschaulichen Beitrag. Dank der genauen Erklärungen und den Sreens hab ich das alles recht schnell hinbekommen.
Danke dafür
Timo von
Webdesign München
Ein interessantes Thema. In dem Zusammenhang bietet es sich an, auf die Option zu verweisen, eine Du- oder eine Sie- Sprachdatei einzusetzen (de_DE.mo bzw. de_DE_Sie.mo). Letztere ist gerade im kommerziell genutzten Blogs oder bei Verwendung von WP als CMS sehr hilfreich, da das “Du” ja nur in der Bloggerszene üblich ist.
Grüße aus dem Erzgebirge.
PS.: “Notify me of followup comments via e-mail” wird wohl von den genannten Werkzeugen nicht berücksichtigt?
@Matthias: Doch, würde es. Wenn ich endlich Zeit und Lust hätte, das plugin zu übersetzen.
wow super
genau was ich gesucht hatte. Is immer so blöd wenn der Blog auf Englisch is dann aber da steht you can comment here or send a trackback.
danke für den Post
Super erklärt, die Themes übersetze ich wenn überhaupt mit der Hand. Das ist allerdings ein ziemliches Code-Gewurschtel. Werde das mal lokal testen.
Liebe Grüße
Super Plugin, das einem unhemilich viel Zeit abnimmt. Allerdings habe ich ein kleines Problem: Plugin funktioniert, findet auch das zu übersetzende Theme und lässt mich auch übersetzen. PO- und MO-Dateien sind im Verzeichnis enthalten…aber die Übersetzung erscheint nicht in der Ansicht. Gibt es noch irgendwo was, was ich einstellen muss?
Super Arbeit das habe ich lange gesucht. Vielen dank und Gruß Mika