WordPress Theme lokalisieren- Sprachdatei erstellen-Schritt für Schritt Anleitung

Wer ein Wordpress Theme anbietet, mag meist, dass dies auch in anderen Sprachen verwendet werden kann. Für jede Sprache eigene Templates erstellen ist mühsam und viel Arbeit. GetText und als Editor PoEdit hilft dabei. Wenn man weiß wie.

Ein WordPress Theme oder ein Wordpress Plugin für viele verschiedene Sprachen anzubieten ist extrem leicht, weil WordPress “gettext” in sich beheimatet. Für technik Freaks, dies ist eine Library, die Übersetzungen einfach machen sollte.

english language flag If you would like to read this tutorial in english, please visit Weblogtoolscollection.

Für nicht Technik Freaks, dieses gettext ermöglicht, dass Übersetzungen nicht im HTML Quelltext gemacht werden müssen.

Also die Sprachdatei wird ausgelagert-ist extra. Ein einziges Mal muss man die Templates von WordPress-also alle Dateien, die ein WordPress Theme hat bearbeiten.

In diesem Artikel erkläre ich wie man die Templates, die einzelnen Dateien eines WordPress Themes vorbereitet, anschließend wie man den Editor PoEdit dann verwendet. PoEdit gibt es für viele Betriebssysteme, sein System bleibt aber gleich.

Meine Erklärungen sind einfachst, denn wer PHP kann, der weiß ja auch so wie es geht. ;)

Ich verwende hier viele Screenshots und viele Codebeispiele daher wird der Artikel lang. Ich empfehle auch diesen Artikel entweder bei einem der Social Bookmark Dienste zu bookmarken oder auszudrucken, denn so kann man leicht nachlesen.

WordPress Theme Templates für die Sprachdatei vorbereiten.

Einach eine Datei eines WP Themes mit einem Texteditor öffnen und nach “Worten” suchen oder ganzen Sätzen.

Beispiel aus meinem my-photo-blog.

Zuerst stand da wo:”Something about you.”

 <?php _e('Something about you.','mtsphoto') ;?>

Dies bedeutet:

<?php

PHP Du bekommst Arbeit. ;)

_e('Something about you.','mtsphoto')

Findet PoEdit nachher wo einen Unterstrich mit einem “e”, dann weiß es:Jetzt muss ich übersetzen. Die Klammer und die Hochkoma mag PHP.

Something about you soll übersetzt werden, dann ein Koma, dann der Name des Projektes.

Eine Übersetzung ist ein Projekt und braucht daher einen Namen.

“mtsphoto” ist ein frei gewählter Name. Ich empfehle einen aussagekräftigen Namen und kurz. Keine Sonderzeichen, keine Ziffern, Groß und Kleinschreibung ist wichtig, daher am besten immer kleine Buchstaben,sonst vertippt man sich zuoft.

Der Freiraum zwischen den Hochkoma ist dann für die Übersetzung wichtig. Es macht also Unterschied, ob man

 <?php _e('Something about you.     ','mtsphoto') ;?>

oder

 <?php _e('Something about you.','mtsphoto') ;?>

getippt hat. Sorgsames Arbeiten erleichtert einiges.

 ;?>

PHP Dein Job ist aus.

Wie geht das, wenn da schon wo PHP beim Arbeiten ist.

Aus

<?php comments_number('Leave a reply', '1 Comment', '% Comments' );?> <?php the_title(); ?>

wird dann:

<?php comments_number(__('Leave a reply','mtsphoto'), __('1 Comment','mtsphoto'), __('% Comments','mtsphoto') );?>

So bereitet man alle zu übersetzenden Worte, Phrasen, Sätze vor.

WordPress Theme und Sprachdatei bekannt machen.

Im header.php Template oder zumindest in einem Template, das garantiert immer gebraucht wird, macht man die zukünftige Sprachdatei mit dem WordPress Theme bekannt.

Sonst weiß das WordPress Theme nicht, dass es da wo eine Datei gibt, die übersetzt.

Dies geht so:

<?php load_theme_textdomain('mtsphoto');?>

einfach erklärt: PHP lade Theme Text’hoheit’ “mtsphoto”.

PoEdit erzeugt jetzt die Sprachdatei,die man dann übersetzen kann.

Den Editor PoEdit kann man tatsächlich einfachst installieren.

PoEdit herunterladen. Die Ausführungsdatei anklicken, den Anweisungen während der Installationsroutine folgen. Kennt man ein englisches Wort nicht, hilft wie immer dict.leo.org. ;)

PoEdit Einstellungen

PoEdit Datei==>Einstellungen
 PoEdit erste Einstellungen

PoEdit das erste Mal öffnen und unter Datei==>Einstellungen den Namen und eine Emailadresse angeben. Mehr habe ich da nicht gemacht.

Eine Sprachdatei ist für PoEdit ein Katalog.

PoEdit neuen Katalog erstellen
 PoEdit Katalogeinstellungen erstellen

Unter Projektinfo gibt man der Reihe nach an: Projektname – am besten den kurzen Namen, der auch in den Templates steht,also: “mtsphoto”.

Übersetzungsteam: Namen des Übersetzers.

Eine Emailadresse.

Sprache und dann Land kann man aus einer langen Liste auswählen.

Zeichensatz und Zeichensatz des Quellcodes ist zu 99,99% UTF 8.

PoEdit Pfad zum Katalog

PoEdit Pfad zum Katalog
 PoEdit Pfad zum Katalog

Wenn die Sprachdatei einfach im Ordner des WordPress Themes liegt, dann gehört da zweimal einfach ein Punkt hin. PoEdit stellt sich da öfters an. Ich musste den Punkt dreimal angeben bis PoEdit sich diesen merkte. Also wenn was nicht geht diesen Pfad kontrollieren.

PoEdit Schlüsselwörter des Katalogs

PoEdit Schlüsselwörter des Katalogs
 PoEdit Schlüsselwörter des Katalogs

Die Schlüsselwörter sind einerseis der Unterstrich und das kleine e und ein doppelter Unterstrich. Auch hier musste ich zweimal auf das kleine gepunktete Kästchen klicken bis mir PoEdit erlaubte da die Schlüsselwörter einzutragen. Hat man sich vertippt kann man das Schlüsselwort mit Klick auf das “a|e” Kästchen bearbeiten.

PoEdit speichern unter de_DE

PoEdit speichern unter de_DE
 PoEdit speichern unter de_DE

Jetzt alles speichern. Datei==>Speichern unter==>WordPress Theme Ordner suchen und den Dateinamen de_DE vergeben. de_DE ist das Sprachländerkürzel für unsere schöne deutsche Sprache. Es ist sinnvoll dies so zu tun, denn 1. irgendwann gibt es zig solcher Sprachdateien in einem WP Theme, mit de_DE sieht man gleich welche Datei welche Sprache beinhaltet. 2. funktionierts sonst nicht wirklich gut.

PoEdit erstellt nach dem Speichern ganz automatisch zwei Dateien. Eine mit der Endung .mo eine mit der Dateiendung .po. Ich betrachte diese Dateien als Zwillinge, also nicht trennen.

PoEdit endlich übersetzen

Umlaute, Sonderzeichen
 Umlaute und Sonderzeichen als html entities

Mit einem Klick auf die Weltkugel müßte PoEdit jetzt alle zu übersetzenden Worte, Sätze etc. finden und in einer Liste anzeigen. Anklicken und im Feld unterhalb die Übersetzung hineintippen.

Aufpassen: Abstände sind wichtig. Umlaute sind wichtig. Diese müssen als Entities getippt werden.

PoEdit zeigt Fehler auf

Fehleranzeige
 PoEdit zeigt Fehler an

PoEdit zeigt in einer Statusleiste an, ob eine Übersetzung für den Editor verständlich ist.

Fehler finden
 PoEdit zeigt Fehler an auch im Quelltext an

Wenn man nicht weiß wieso PoEdit mit der Übersetzung nicht zufrieden ist. Kann man unter Bearbeiten==>Verweis finden sich die Stelle im Quelltext anzeigen lassen.

Dort findet man oft einen Abstand oder wie meist bei den XYZ Kommentaren einen Fehler. Ausprobieren bis PoEdit in der Statusleiste überall zufrieden ist. Daran denken: Wortabstände sind ebenfalls wichtig.

Datei==>Speichern.

WordPress Theme mit Sprachdatei Kontrolle und mögliche Fehler

Das WordPress Theme hochladen und aktivieren.

Bleibt die Seite dann Weiß, so richtig schön jungfräulich Weiß hat man irgendwo in einem Template bei den Übersetzungsangaben einen PHP Fehler. Eine vergessene Klammer, ein Hochkoma nicht gemacht oder eines zuviel. Den Strichpunkt nicht angegeben. Das Fragezeichen verloren oder eine spitze Klammer.

Bleiben die Worte English, obwohl PoEdit keinen Fehler gemeldet hat, dann hat man vergessen in der header.php die Sprachdatei mit dem WordPress Theme bekannt zu machen. Erklärung wie das geht viel weiter oben. ;)

Ich wünsche viel Freud mit dem lokalisierten WordPress Theme, auf dass es von China bis Afrika und sonst wo auf der Welt oft genutzt wird.

Andere Toturials zum Thema:

War dies hilfreich so ist weitersagen ausdrücklichst erlaubt ;)
18 Kommentare (und 3 Pings/Tweets) zu: "WordPress Theme lokalisieren- Sprachdatei erstellen-Schritt für Schritt Anleitung"
  1. Vielen Dank für die ausführliche Anleitung. Nun habe auch ich endlich verstanden, wie es geht. Veilleicht kann ich dieses Wissen bald mal umsetzten … Nötig hätte es meine Seite jedenfalls.

    bosch08.02.08 12:11 | # |

  2. Respekt, eine wunderbar verständliche Einführung in die Welt von poEdit.
    Ich werde von meinem Artikel hierher verlinken, denn du hast einiges sehr viel knackiger formuliert :-)

    juliaL4909.02.08 08:59 | # |

  3. Danke, mit dieser Anleitung gehts ganz einfach!

    Chris10.02.08 20:04 | # |

  4. Wie mache ich denn das, wenn ich meine deutsche Sprachdatei bearbeiten möchte? Ich habe die englische Wordpress Software installiert und nutze per Plugin sowohl die Deutsche als auch englische Sprache. Ich möchte aber die deuscthe Sprachdatei um ein paar Begriffe erweitern. Geht das?

    Nachtmeister02.07.08 20:32 | # |

  5. schau mal in den WP Dateien, wie da die Englischen Begriffe angegeben sind, so ergänzt Du die Deinen, dann öffnest Du die deutsche Sprachdatei, läßt sie alle neuen Begriffe suchen und übersetzt dann

    lg

    texto02.07.08 21:27 | # |

  6. Dankeschön!
    Besonders der Hinweis, das Theme mit der Datei “bekannt zu machen” ist wirklich Gold wert ;)

    Seb12.07.08 00:37 | # |

  7. Die Anleitung ist sehr gut, ich habe allerdings noch ein Problem:

    Übersetzungen die so aussehen

    <?php comments_number(__(’Leave a reply’,'coda’),

    funktionieren. Texte die im Ursprung so aussehen

    Comments are closed.

    bekomme ich nicht übersetzt. Ist das evtl. gar nicht möglich?

    Christoph04.10.08 19:35 | # |

  8. Hallo Christoph doch das geht auch, Du mußt sie vorher nur so vorbereiten wie eben Leave a reply vorbereitet ist, das habe ich versucht oben zu erklären

    <?php _e('Comments are closed','coda')?>

    lg

    texto04.10.08 21:57 | # |

  9. Hallo,

    es scheint, dass die aktuelle PoEdit-Version einen Fehler hat. Zumindest bei mir erzeugt sie beim Speichern einen Fehler, der die erzeugten Dateizwillinge unbrauchbar macht. Das WP-Plugin “Codestyling Localization” erzeugt Abhilfe (dies ist quasi ein PoEdit für das WP-Backend).

    LG, Sascha

    Sascha29.11.08 10:56 | # |

  10. Hi Sascha ich nutze Version 1.4.1 und die funktioniert tadellos

    Codestylings Plugin gab es noch nicht als der Artikel entstand ;)

    lg

    texto29.11.08 12:04 | # |

  11. Hallo,

    ich benutze v1.4.2
    Vielleicht ist auch nur bei der Installation irgendwas schief gegangen oder die Version verträgt sich mit irgend einer anderen installierten Software nicht.

    LG, Sascha

    Sascha30.11.08 12:40 | # |

  12. Hi Sascha das kann sein, auf alle Fälle ist das Übersetzungsplugin von Codestyling ja ne tolle Alternative .. und Du hast es geschafft, das zählt ;)

    lg

    texto30.11.08 17:22 | # |

  13. Super! Vielen Dank für die Anleitung! Ich bin gerade über einen Link bei Xing aus dieser Woche hergekommen…

    LG, Annette

    Annette17.09.09 23:23 | # |

  14. freut mich Annette – ich vermut so ganz stark , dass ich ihn dort setzte ;)

    texto17.09.09 23:41 | # |

  15. hi,

    Ich weiß nicht, ob das hier so gut reinpasst, aber ich habe auch eine Webseite, die ich in andere Sprachen übersetzen möchte, bis jetzt wurde mir nur eine Agentur dazu empfohlen:deu.uebersetzungsagentur24.com // Übersetzungsbüro

    hat noch jemand gute Erfahrungen gehabt?

    Danke

    gruß

    Stewart13.11.09 15:26 | # |

  16. Hi Stewart dies ist hier falsch,
    da gehts um was anders, darum lösch ich auch den Link wieder ;)

    texto13.11.09 19:46 | # |

  17. Danke für die super Anleitung. Es klappt!!!

    Jurek15.11.09 13:22 | # |

  18. Hat auch bei mir geklappt, besten Dank. Allerdings: In WP 2.9.1 müssen die beiden de_DE Dateien unbedingt in den Ordner “languages” des themes-ordner.
    Wer Glück hat, findet dort bereits ein für die Übersetzung vorbereitetes Dokument. Beim themes “magazine-basic” war es so.

    Andrew03.02.10 10:36 | # |

Pings-Tweets
  1. WordPress als CMS nützlich für Vereine - WordPress Theme WP Contact Manager - in deutsch
    [...] die Konfiguration der einzelnen WP Plugins und außerdem habe ich das WP Contact Manager Theme lokalisiert- es also für ...
  2. Mein WordPress Theme mit gettext übersetzen » Jared
    [...] Version)! 2 Seiten die mir für das Vorhaben die technische Grundlage geliefert haben, sind Texto.de (sehr zu empfehlen) ...
  3. Sprachanpassung | Die Metaphorik des Seins
    [...] ich stundenlang herumgebastelt habe und dieses Howto leider nicht funktioniert hat (PoEdit hat in meiner Installation offensichtlich irgendeinen [...]
  4. Tweets
  • Name and Mail are required.