Kurz gefasst
- Was Sie brauchen
- Das Theme, einen Editor und Poedit oder Loco Translate.
- Der wichtigste Schritt
- Die Textdomain des Themes ermitteln, sonst greift keine Übersetzung.
- Updatesicher
- Übersetzungen gehören nach
wp-content/languages/themes/, nicht in den Theme-Ordner.
Ein gutes Theme kommt selten auf Deutsch. Wer es trotzdem einsetzen will, übersetzt es selbst. Das ist deutlich weniger Arbeit, als es klingt, wenn man die Reihenfolge kennt und die Dateien an der richtigen Stelle ablegt.
Diese Anleitung stand hier in ihrer ersten Fassung im Frühjahr 2007. Damals ging es um dreispaltige Themes, die man Zeile für Zeile im Editor umgeschrieben hat. Das Verfahren von damals funktioniert heute nicht mehr, das Ziel ist dasselbe geblieben. Die aktuelle Fassung beschreibt den Weg über Sprachdateien, wie ihn WordPress seit Version 3 vorsieht.
Warum man Theme-Dateien nicht direkt bearbeitet
Der naheliegende Weg wäre, die englischen Texte direkt in den PHP-Dateien zu ersetzen. Genau das sollten Sie nicht tun. Beim nächsten Theme-Update überschreibt WordPress Ihre Dateien, und die gesamte Arbeit ist weg. Aus demselben Grund verbietet sich auch das Bearbeiten über den eingebauten Theme-Editor im Backend.
WordPress trennt deshalb Text und Übersetzung. Im Theme steht nicht der fertige Satz, sondern ein Aufruf wie __( 'Read more', 'mein-theme' ). Der zweite Parameter ist die Textdomain. Sie ist der Schlüssel zu allem Weiteren.
Schritt 1: Die Textdomain ermitteln
Öffnen Sie die style.css des Themes. Im Kopfkommentar steht in der Regel eine Zeile Text Domain:. Fehlt sie, durchsuchen Sie die Theme-Dateien nach __( und lesen den zweiten Parameter ab. Notieren Sie sich den Wert genau so, wie er dort steht, inklusive Bindestrichen.
Findet sich im Theme gar kein Übersetzungsaufruf, sondern nur fest verdrahteter englischer Text, ist das Theme nicht übersetzungsfähig. Dann bleibt nur ein Child-Theme, in dem Sie die betroffenen Template-Dateien überschreiben.
Schritt 2: Eine Vorlage erzeugen
Viele Themes bringen im Ordner languages/ bereits eine .pot-Datei mit. Das ist die leere Vorlage mit allen übersetzbaren Zeichenketten. Ist keine vorhanden, erzeugen Sie sie mit Poedit über den Punkt "Neu aus POT-/PO-Datei" oder mit der WP-CLI über wp i18n make-pot.
Schritt 3: Übersetzen
Öffnen Sie die Vorlage in Poedit und legen Sie eine neue Übersetzung mit der Sprache Deutsch an. Poedit zeigt links den Originaltext, rechts tragen Sie die Übersetzung ein. Drei Punkte, an denen Übersetzungen regelmäßig unsauber werden:
- Platzhalter unverändert lassen.
%s,%dund%1$smüssen exakt erhalten bleiben, auch wenn sich die Wortstellung ändert. Bei mehreren Platzhaltern verwenden Sie die nummerierte Form. - Anrede festlegen und durchhalten. Entscheiden Sie sich einmal für Sie oder Du. Ein Theme, das im Kommentarformular duzt und im Footer siezt, wirkt unfertig.
- Pluralformen ausfüllen. Deutsch hat zwei Formen. Poedit zeigt dafür zwei Felder, beide gehören ausgefüllt.
Beim Speichern erzeugt Poedit zwei Dateien: die lesbare .po und die kompilierte .mo. WordPress liest ausschließlich die .mo, die .po brauchen Sie für spätere Korrekturen.
Schritt 4: Updatesicher ablegen
Legen Sie beide Dateien nicht in den Theme-Ordner, sondern nach wp-content/languages/themes/. Der Dateiname setzt sich aus Textdomain und Sprachkürzel zusammen, also etwa mein-theme-de_DE.mo. Dieser Ordner bleibt bei Theme-Updates unangetastet, Ihre Übersetzung überlebt damit jede neue Version.
Anschließend stellen Sie unter Einstellungen die Sprache der Website auf Deutsch. Ein Aufruf der Startseite zeigt sofort, ob die Übersetzung greift. Passiert nichts, stimmt in neun von zehn Fällen die Textdomain im Dateinamen nicht.
Häufige Fragen
Muss ich für jedes Update neu übersetzen?
Nein. Kommen neue Zeichenketten hinzu, aktualisieren Sie in Poedit die vorhandene .po aus der neuen Vorlage. Bestehende Übersetzungen bleiben erhalten, nur die neuen Einträge sind leer.
Was ist mit Plugins?
Das Verfahren ist identisch, der Zielordner heißt wp-content/languages/plugins/.
Geht das auch ohne Poedit?
Ja. Das Plugin Loco Translate erledigt denselben Ablauf im Backend und legt die Dateien auf Wunsch direkt am richtigen Ort ab. Für einzelne Korrekturen ist das schneller, für ein komplettes Theme bleibt Poedit angenehmer.
Danach lohnt der Blick auf die Technik
Ein übersetztes Theme ist die halbe Miete. Damit die Seite auch schnell und stabil läuft, entscheidet die Umgebung dahinter mit. Was ein Hoster für WordPress mitbringen sollte, steht im Beitrag zum WordPress-Hosting. Und bevor Sie ein Theme aus unbekannter Quelle einsetzen, lesen Sie den Abschnitt zu Updates und Sicherheitslücken im Beitrag über WordPress-Updates.