Manchmal kann es eine ziemliche Herausforderung sein, dynamische Strings übersetzen in WordPress. Und das hat hauptsächlich zwei Gründe:
- sie stammen von einem Plugin oder Theme, das nicht verwendet gettext für ihre Saiten;
- Sie sind vom Benutzer erstellt und in den Plugin- oder Theme-Optionen, in den Benutzermeta oder in einer benutzerdefinierten Tabelle gespeichert, die dem Übersetzungsplugin nicht bekannt ist.
Themen wie Hestia Nutzen Sie die WordPress Customizer-Oberfläche, um schnell eine schöne Startseite zu erstellen, die einen Slider, verschiedene Informationsspalten und eine Liste von WooCommerce-Produkte falls dies ebenfalls benötigt wird, sowie ein Kontaktformular.
Viel Inhalt von dieser Startseite wird nicht in wp_posts oder wp_postmeta gespeichert. Während einige Bedenken äußern werden, warum das Aufbrechen der Beitrags-/Seiten-Konvention eine schlechte Idee ist, Ich persönlich mag, wie reibungslos das Einrichten dieser ersten Seite verlaufen ist.
Diese Flexibilität ist großartig, wenn man die Dinge auf eigene Weise tun möchte, sie ist jedoch auch der Hauptgrund Übersetzen einer WordPress-Website 100% kann etwas schwieriger zu erreichen sein, vor allem, wenn man nicht besonders technisch versiert ist.
Aktuelle Lösungen

Jedes WordPress-Übersetzungs-Plugin hat seinen eigenen Arbeitsablauf beim Übersetzen dynamischer Strings.
- Gettext-Strings werden pro Plugin/Theme oder direkt aus übersetzt https://translate.wordpress.org/;
- Von Nutzern generierte Strings aus dem Plugin oder Theme müssen mithilfe der Übersetzungs-API des Plugins für die Übersetzung markiert werden.
Das Gute an dieser Lösung ist, dass sie funktioniert.
Das Schlimme ist, dass die Übersetzung außerhalb des Kontexts stattfindet und die Unterstützung von Plugin- und Theme-Entwicklern benötigt, um mit einer Vielzahl von Übersetzungs-Plugins.
Das Schlimmste daran ist, dass, wenn Plugin- und Theme-Entwickler unterstützen das Übersetzungsplugin nicht, es wird einfach überhaupt nicht funktionieren.
Dynamische Zeichenfolgen mit TranslatePress übersetzen
Wir wussten, dass das Übersetzen dynamischer Strings eine Herausforderung sein würde, als wir mit der Entwicklung von begannen TranslatePress. Was wir für kompliziert hielten, erwies sich als noch viel komplizierter, als wir tatsächlich an dem Problem zu arbeiten begannen.
Was wir für kompliziert hielten, erwies sich als noch viel komplizierter.
Um sowohl Gettext-Felder als auch von Benutzern hinzugefügte dynamische Strings übersetzen zu können, haben wir eine unkompliziertere Interaktion implementiert:
- Wenn ein Plugin oder Theme bereits lokalisiert war, behalten wir die Übersetzung bei, aber Sie können sie trotzdem ändern, wenn Sie damit nicht einverstanden sind;
- Zeichenketten, die in der Optionentabelle gespeichert und im Front-End ausgegeben werden, lassen sich leicht übersetzen, sodass kein Suchen in einer komplexen String-Übersetzungstabelle mehr erforderlich ist;
- Du nutzt dieselbe Benutzeroberfläche, um alle Strings auf deiner Website zu übersetzen.

Ein Blick auf die Besonderheiten und Funktionen
Da sich mit gettext versehene Felder von normalen Zeichenfolgen unterscheiden, gibt es kleine, aber spürbare Unterschiede zwischen ihnen.
%1$s
Wir fangen an mit %1$s. Diese stellen dynamische Variablen dar, die vom aktuellen Benutzer, der Anzahl der Käufe, den Plugin-Einstellungen usw. abhängen.
Dies ist der richtige Weg, um diese Strings zu übersetzen, und als Bonus füllen wir diese Felder, falls das Plugin bereits in eine bestimmte Sprache übersetzt ist, auch mit der korrekten Übersetzung aus.
Originaler String
Die gettext-Implementierung erlaubt es Ihnen nicht, festzulegen, in welcher Sprache die Strings vorliegen. Wenn Sie also ein Plugin-Entwickler aus Frankreich sind, steht es Ihnen frei, Ihr Plugin auf Französisch zu entwickeln. Aus diesem Grund sehen Sie den “Original String” und alle Sprachen darunter. Selbst Englisch. Strings, die wir erkennen können, werden durch die grüne Bearbeiten-Schaltfläche hervorgehoben.
Ein cooler kleiner Nebeneffekt ist, dass man sogar die Standard-Zeichenkette ändern kann, indem man zum Beispiel ins Englische “übersetzt”.
Ein unglücklicher Nebeneffekt ist, dass es sich von der Originalsprache unterscheidet. → Der für normale Zeichenketten verfügbare Übersetzungssprach-Workflow. Daher müssen Sie etwas mehr darauf achten, in welche Sprache Sie übersetzen, bis wir einen besseren Weg finden, dies in der Benutzeroberfläche darzustellen.
Versteckte Fäden
Gettext-Zeichenketten, die mit Javascript hinzugefügt werden, sowie andere Zeichenketten, die im Frontend der Website nicht sichtbar sind (wie zum Beispiel WooCommerce-E-Mails oder URL-Slugs), können aufgerufen werden über die Zeichenfolgenübersetzung Schnittstelle. Auf diese Weise können Sie Inhalte übersetzen, die über den visuellen Editor nicht zugänglich sind.
Und schließlich gibt es bestimmte Arbeitsabläufe (angenommen, ein Formular wird nur für nicht angemeldete Benutzer angezeigt, sodass Sie es als Administrator nicht sehen), die diese Zeichenfolgen nicht offenlegen, sodass Sie sie nicht übersetzen können. Mit der Als Rolle durchsuchen Mit diesem Add-on können Sie die Website direkt aus dem Übersetzungseditor heraus als Sie selbst, in einer anderen Rolle (angemeldet) oder als nicht angemeldeter Benutzer durchsuchen. Auf diese Weise können Sie Strings übersetzen, die basierend auf dem Anmeldestatus dynamisch angezeigt werden.
Wenn Sie neugierig sind und mehr erfahren möchten, finden Sie hier ein kurzes Video, in dem gezeigt wird, wie Sie mit TranslatePress jede Art von dynamischen oder variablen Inhalten übersetzen können:
Mit TranslatePress lassen sich alle dynamischen Zeichenfolgen ganz einfach übersetzen
Du kannst TranslatePress kostenlos herunterladen auf WordPress.org. Es wurde entwickelt, um Ihnen die Übersetzung dynamischer Zeichenfolgen und die Umstellung Ihrer Website auf Mehrsprachigkeit besonders einfach zu machen.
Laden Sie es herunter, spielen Sie damit und sagen Sie es uns was du brauchst um Ihre Erfahrung bei der Übersetzung einer WordPress-Site noch besser zu machen.
Wenn Sie damit zufrieden sind, könnten Sie in Betracht ziehen Upgrade auf die Premium-Version für unbegrenzte Sprachen, erweiterte SEO-Funktionen, und vieles mehr.
TranslatePress Mehrsprachig
Ein großes Danke an alle unsere Beta-Tester und Ionuț Neagu von CodeinWP für ihr erstes Feedback.
Haben Sie noch Fragen zum Übersetzen dynamischer Strings? Lassen Sie es uns in den Kommentaren unten wissen!
Wenn Sie diesen Beitrag hilfreich fanden, schauen Sie sich bitte unsere an YouTube-Kanal, wo wir ständig kurze und leicht verständliche Video-Tutorials hochladen. Sie können uns auch folgen auf Facebook und Twitter um der Erste zu sein, der jedes Mal Bescheid weiß, wenn wir etwas posten.
[...] Dynamische Strings in WordPress übersetzen – eine neue Möglichkeit, dynamische Strings in WordPress zu übersetzen. [...]