Tipps zu Übersetzungen in WordPress mit poEdit

Anzeige

Beim Durchsehen meiner früheren Artikel bin ich auf meinen Beitrag WordPress Themes lokalisieren gestoßen.

WordPress hat sich weiterentwickelt und ich habe einiges gelernt, deswegen kann ich ein paar Tipps zur Übersetzung mit poEdit hinzufügen:

Die richtigen Keywords in poEdit angeben

poEdit bietet die Möglichkeit den Übersetzungskatalog aus den Quelldateien zu aktualisieren (Menü “Catalog” -> “Update from Sources”). Das ist nützlich, wenn man größere Änderungen in den Quelldateien gemacht hat und dadurch z.B. neue Texte hinzufügt hat, die übersetzt werden müssen.

Die entsprechenden Stellen findet poEdit, indem das Programm nach den in den Einstellungen hinterlegten Keywords sucht (Menü “Catalog” -> “Settings” -> Tab “Keywords”)

poEdit Keywords

poEdit Keywords

Diese Keywords sind für WordPress __ , _e, _c und __ngettext. Die Keywords bzw. die Funktionen _c und __ngettext sind erst mit neueren WordPress Versionen hinzugekommen.

Unklare Übersetzungen mit Beschreibungen kennzeichnen

Die Funktion _c() wird genutzt, um Texte mit Kommentaren zu versehen z.B. _c("Vortrag|Rede") und _c("Vortrag|Buchhaltung"), damit ein Übersetzer leichter die beabsichtigte Aussage erkennen kann. Ein gutes Beispiel ist im Default Theme in der Datei archive.php

<h2 class="pagetitle"><?php printf(_c('Archive for %s|Daily archive page', 'kubrick'), get_the_time(__('F jS, Y', 'kubrick'))); ?></h2>

<h2 class="pagetitle"><?php printf(_c('Archive for %s|Monthly archive page', 'kubrick'), get_the_time(__('F, Y', 'kubrick'))); ?></h2>

<h2 class="pagetitle"><?php printf(_c('Archive for %s|Yearly archive page', 'kubrick'), get_the_time(__('Y', 'kubrick'))); ?></h2>

Platzhalter benutzen

Es ist einfacher einen ganzen Satz zu übersetzen, statt einzelner Satzteile

Schlecht:

<?php _e("Benutzer: ").$x._e(" hat ").$iArticleCount._e(" Artikel geschrieben"); ?>

Hier sind Teilestrings mit Leerzeichen und Satzzeichen enthalten. Dazu kommt, dass in anderen Sprachen evtl. die Gramatik einen anderen Satzaufbau erfordert.

Besser:

<?php _e("Benutzer %1$s hat %2$d Artikel geschrieben", $x, $iArticleCount); ?>

Der Übersetzer kann jetzt den Satz beliebig umstellen. Durch die Platzhalter werden die Werte an den entsprechenden Stellen eingefügt.

Pluralformen übersetzen

Der Plural ist in den verschiedenen Sprachen sehr unterschiedlich und damit auch schwer zu übersetzen. Dazu gibt es die __ngettext() Funktion. Singular und Plural können dabei unterschiedlich übersetzt werden.

Beispiel:

<?php printf(__ngettext("Ein Beitrag ist neu","%d Beiträge sind neu", $iArticleCount), $iArticleCount); ?>

In Variable $iArticleCount ist die Anzahl der Beiträge enthalten. Ist $iArticleCount == 1, dann wird die Singularform “Ein Beitrag ist neu” gewählt. Ist $iArticleCount > 1, dann wird die Pluralform “%d Beiträge sind neu” gewählt. Abschließend wird noch der Platzhalter %d durch $iArticleCount ersetzt.

Im WordPress Codex ist im Artikel I18n_for_WordPress_Developers noch mehr zu Thema Übersetzungen bzw. I18n zu finden.

Bookmarken bei Diese Icons verlinken auf Bookmark Dienste bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • MisterWong
  • Y!GG
  • Webnews
  • Linkarena
  • Oneview
  • Tausendreporter
  • SEOigg
  • Digg
  • del.icio.us
  • StumbleUpon
  • Folkd
  • Furl

Ähnliche Artikel
  1. Tipps zur Theme Entwicklung
  2. Localizing Wordpress Themes
  3. Norwegian nynorsk localization for Wordpress theme “wp-andreas-09 l10n”
  4. Hungarian localization for Wordpress theme “wp-andreas-09 l10n”
  5. Wordpress Themes lokalisieren

Kommentieren

Sie können diese HTML Elemente nutzen:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>