AEM bietet eine Konsole für die Verwaltung der verschiedenen Übersetzungen von Texten, die in der Komponenten-Benutzeroberfläche verwendet werden. Diese Konsole ist verfügbar unter
https://<hostname>:<port-number>/libs/cq/i18n/translator.html
Mithilfe des Übersetzer-Tools können Sie englischsprachige Zeichenfolgen und die dazugehörigen Übersetzungen verwalten. Die Wörterbücher werden im Repository erstellt (beispielsweise in /apps/myproject/i18n).
Hinweis: Das Übersetzer-Tool und die Wörterbücher, die Sie verwalten, dienen zur Darstellung der Komponentenbenutzeroberfläche in verschiedenen Sprachen. Wenn Sie Seiten oder benutzergenerierte Inhalte übersetzen möchten, lesen Sie Übersetzen von Inhalten für mehrsprachige Sites und Übersetzung benutzergenerierter Inhalte.
Bearbeiten Sie nur Wörterbücher, die für Ihr Projekt erstellt werden und sich unter /apps
befinden.
AEM Systemwörterbücher sind auch in diesem Tool verfügbar. Ändern Sie nicht die AEM Systemwörterbücher, da dies Probleme mit der AEM Benutzeroberfläche verursachen kann. Außerdem können Änderungen bei der Aktualisierung verloren gehen. AEM-Systemwörterbücher befinden sich unter /libs
.
Das Übersetzer-Tool eignet sich ungeachtet seiner klassischen Benutzeroberfläche zur Übersetzung von Phrasen beliebiger Benutzeroberflächen.
Das Übersetzer-Tool zeigt die in AEM verwendeten Texte zusammen mit den verschiedenen Übersetzungen nebeneinander an:
Sie können die englischen und übersetzten Texte durchsuchen, filtern und bearbeiten. Sie können auch Wörterbücher zur Übersetzung in das XLIFF-Format exportieren und die Übersetzungen dann wieder in die Wörterbücher importieren.
Sie können die i18n-Wörterbücher auch über diese Konsole zu einem Übersetzungsprojekt hinzufügen. Sie können entweder eine neue erstellen oder einem vorhandenen Projekt hinzufügen.
Klicken Wörterbuch übersetzen.
Wählen Sie je nach Bedarf die Option Erstellen oder Hinzufügen aus. Ein Dialogfeld wird geöffnet.
Füllen Sie die Felder nach Bedarf aus und klicken Sie auf „OK“.
Nun können Sie auf OK klicken oder das Zielwörterbuch anzeigen.
Weitere Informationen zu Übersetzungsprojekten finden Sie unter Verwalten von Übersetzungsprojekten.
Erstellen Sie ein Wörterbuch zur Verwaltung Ihrer lokalisierten Benutzeroberflächen-Zeichenfolgen. Nach der Erstellung kann das Wörterbuch mithilfe des Übersetzungs-Tools verwaltet werden.
Fügen Sie mithilfe von CRXDE Lite den Stammknoten (sling:Folder
) für Ihr neues Wörterbuch als Struktur für die Sprachdefinitionen hinzu:
/apps/<projectName>/i18n
Beispiel: /apps/myProject/i18n
Fügen Sie die erforderliche Sprachstruktur unter diesem Stamm hinzu. Beispiel:
/apps/myProject/i18n [sling:Folder]
- de.json [nt:file] [mix:language]
+ jcr:language = de
- fr.json [nt:file] [mix:language]
+ jcr:language = fr
Dies ist die Struktur des Sling-i18n-Moduls.
Laden Sie den Übersetzer und den Wörterbuchpfad neu (z. B. /apps/myProject/i18n
) in der Dropdown-Auswahl in der Symbolleiste verfügbar. Wählen Sie diese aus, um mit dem Hinzufügen von Zeichenfolgen und deren Übersetzungen zu beginnen.
Der Übersetzer speichert nur Übersetzungen für Sprachen, die tatsächlich unter dem Pfad vorhanden sind (z. B. /apps/myProject/i18n
).
Achten Sie darauf, dass diese den im Raster dargestellten Sprachen entsprechen.
Verwenden Sie das Übersetzungs-Tool, um die Zeichenfolgen in Ihren Wörterbüchern zu verwalten. Sie können englische Zeichenfolgen hinzufügen, ändern und entfernen sowie übersetzte Zeichenfolgen angeben.
Bearbeiten Sie nur Wörterbücher, die für Ihr Projekt erstellt werden und sich unter /apps
befinden.
Ändern Sie nicht die AEM Systemwörterbücher, da dies Probleme mit der AEM Benutzeroberfläche verursachen kann. Außerdem können Änderungen bei der Aktualisierung verloren gehen. AEM-Systemwörterbücher befinden sich unter /libs
.
Fügen Sie englische Zeichenfolgen zu einem Wörterbuch hinzu, das Ihre Komponente internationalisiert hat. Fügen Sie nur internationalisierte Zeichenfolgen hinzu, damit Sie keine Ressourcen verschwenden, indem Sie nicht verwendete Zeichenfolgen übersetzen.
Die Zeichenfolgen, die Sie einem Wörterbuch hinzufügen, müssen genau mit der im Code angegebenen Zeichenfolge übereinstimmen. Wenn die standardmäßige englische Zeichenfolge, die im Code verwendet wird, nicht mit der englischen Zeichenfolge in einem Wörterbuch übereinstimmt, wird die übersetzte Zeichenfolge bei Bedarf nicht in der Benutzeroberfläche angezeigt. Bei Zeichenfolgen wird zwischen Groß- und Kleinschreibung unterschieden.
Bereitstellen von Übersetzungshinweisen
Verwenden Sie die Eigenschaft Kommentar der Wörterbuchzeichenfolge, um dem Übersetzer Informationen zur Klärung der Bedeutung der Zeichenfolge bereitzustellen. Normalerweise unterstützt die Benutzeroberfläche Benutzer bei der Bestimmung der Bedeutung mehrdeutiger Wörter. Der Übersetzer sieht die Zeichenfolge jedoch nicht im Kontext der Benutzeroberfläche. Der Übersetzungshinweis entfernt die Uneindeutigkeit. So kann ein Übersetzer mithilfe eines Kommentars beispielsweise darauf hingewiesen werden, dass das englische Wort „Request“ nicht als Verb, sondern als Substantiv verwendet wird.
Übersetzungshinweise unterscheiden auch Zeichenfolgen, die identisch sind und unterschiedliche Bedeutungen haben. Zum Beispiel kann das Wort "Suche"ein Substantiv oder ein Verb sein, das zwei "Suche"-Einträge im Wörterbuch mit zwei verschiedenen Übersetzungshinweisen erfordert. Der Code, der die Zeichenfolge anfordert, enthält auch den Übersetzungshinweis, sodass die richtige Zeichenfolge in der Benutzeroberfläche verwendet wird.
Einschließen indizierter Variablen
Sie können Variablen in die lokalisierte Zeichenfolge einfügen, um dem Satz Kontextbedeutung zu geben. Ein Beispiel: Nach der Anmeldung bei einer Webanwendung wird auf der Homepage folgende Nachricht angezeigt: „Willkommen zurück, Administrator. Sie haben zwei Nachrichten in Ihrem Posteingang.“ Der Seitenkontext bestimmt den Benutzernamen und die Anzahl der Nachrichten.
Wenn Sie Variablen in die lokalisierte Zeichenfolge aufnehmen möchten, platzieren Sie in Klammern eingeschlossene Indizes an der Position der Variablen im ersten Argument der GET-Methode. Beschreiben Sie die Werte in einem Übersetzungshinweis. Der Übersetzer muss die Bedeutung der Variablen kennen, da andere Sprachen ggf. eine andere Satzstruktur erfordern.
Der Code, der die übersetzte Zeichenfolge anfordert, gibt abhängig vom Kontext entsprechende Werte für die indizierten Variablen an.
Wenn sich ein Benutzer also beispielsweise bei einer Website anmeldet, wird folgende Zeichenfolge angezeigt und diese Zeichenfolge ist auch im Wörterbuch enthalten:
Welcome back {0}. You have {1} messages.
Der folgende Kommentar beschreibt die Variablen:
{0} = the user name, {1} = the number of items in the user's inbox
Ändern von Zeichenfolgen
Ändern oder entfernen Sie englische Zeichenfolgen, da sie im Code geändert oder entfernt werden. Wenn Sie eine Zeichenfolge ändern, wird die ursprüngliche Zeichenfolge beibehalten und eine neue Zeichenfolge erstellt, die die Änderung widerspiegelt. Bevor Sie eine Zeichenfolge entfernen, stellen Sie sicher, dass sie von keinem Code verwendet wird.
Gehen Sie wie folgt vor, um eine Zeichenfolge hinzuzufügen.
Wählen Sie im Dropdown-Menü Wörterbücher das Wörterbuch aus, dem Sie eine Zeichenfolge hinzufügen möchten. Im Dropdown-Menü werden Wörterbücher durch ihren Pfad im Repository dargestellt.
Klicken Sie über der Tabelle mit den Zeichenfolgen und Übersetzungen auf „Hinzufügen“.
Geben Sie im Feld "String"des Dialogfelds "String hinzufügen"die englische Zeichenfolge ein. Geben Sie bei Bedarf im Feld Kommentar einen Übersetzungshinweis für den Übersetzer ein.
Klicken Sie auf „OK“.
Klicken Sie auf „Speichern“.
Gehen Sie wie folgt vor, um eine Zeichenfolge in einem Wörterbuch zu ändern.
Wählen Sie im Dropdown-Menü Wörterbücher das Wörterbuch aus, das die zu ändernde Zeichenfolge enthält.
Doppelklicken Sie auf die zu ändernde Zeichenfolge.
Wählen Sie im Dialogfeld "Zeichenfolge bearbeiten"die Option "Zeichenfolge oder Kommentar ändern"(erstellt eine Kopie).
Ändern Sie die Zeichenfolge oder den Kommentar und klicken Sie auf "OK".
Klicken Sie auf „Speichern“.
Gehen Sie wie folgt vor, um eine Zeichenfolge aus einem Wörterbuch zu entfernen.
Wählen Sie im Dropdownmenü Wörterbücher das Wörterbuch aus, aus dem Sie eine Zeichenfolge entfernen möchten.
Klicken Sie auf „Entfernen“.
Klicken Sie auf „Speichern“.
Die Suchleiste am unteren Rand des Übersetzer-Tools bietet verschiedene Auswahloptionen für Zeichenfolgen:
Nach Text filtern: Ein Muster, das mit der englischen Zeichenfolge, mit dem Kommentar oder mit Übersetzungen abgeglichen wird. Nur Elemente, die dem Muster ganz oder teilweise entsprechen, werden in der Tabelle angezeigt.
Änderungen: Beliebig, Geändert, Neu, Gelöscht: Zeigt Elemente an, die geändert und nicht gespeichert wurden.
Hat Kommentar: Zeigt Elemente an, die Kommentare für Übersetzer enthalten.
Fehlende Übersetzungen: Zeigt Elemente an, bei denen für mindestens eine Sprache keine Übersetzung vorliegt.
Nachdem Sie die englische Zeichenfolge zu einem Wörterbuch hinzugefügt haben, können Sie Übersetzungen der Zeichenfolge hinzufügen. Sie können auch Wörterbuch exportieren , damit es von einem Dritten übersetzt werden kann.
Auswählen Ihr projektspezifisches Wörterbuch da es den Pfad im Repository angibt, das die Übersetzungen enthält. Wählen Sie beispielsweise Wörterbücher as:
/apps/myProject/i18n
Bearbeiten Sie nur Wörterbücher, die für Ihr Projekt erstellt werden und sich unter /apps
befinden.
AEM Systemwörterbücher sind auch in diesem Tool verfügbar. Ändern Sie nicht die AEM Systemwörterbücher, da dies Probleme mit der AEM Benutzeroberfläche verursachen kann. Außerdem können Änderungen bei der Aktualisierung verloren gehen. AEM-Systemwörterbücher befinden sich unter /libs
.
Die übersetzten Texte für die Zeichenfolgen können wie folgt bearbeitet werden:
Klicken Sie auf der Symbolleiste auf Speichern, um die Änderungen zu übernehmen.
Wenn Sie anstelle von Speichern auf Zurücksetzen und aktualisieren klicken, werden alle Änderungen an den vorherigen Texten rückgängig gemacht.
Mit dem Übersetzungs-Tool können Sie Wörterbücher für externe Übersetzungsdienste exportieren und anschließend wieder importieren.
Exportieren Sie ein Wörterbuch in eine XLIFF-Datei, damit ein Drittanbieterdienst die Wörterbuchzeichenfolgen übersetzen kann.
Wenn Sie eine XLIFF-Datei exportieren und eine Sprache einschließen, muss die Knotenstruktur des Wörterbuchs im Repository diese Sprache enthalten. Wenn die Sprache nicht enthalten ist, treten Fehler auf. Wenn Sie also beispielsweise die XLIFF-Datei für Französisch exportieren möchten, muss der Wörterbuchordner unter mix:language
den untergeordneten Knoten fr
enthalten. (Siehe Erstellen eines Wörterbuchs.)
Gehen Sie wie folgt vor, um eine XLIFF-Datei für eine bestimmte Sprache zu exportieren:
Öffnen Sie das Übersetzungs-Tool http://<host>:<port>/libs/cq/i18n/translator.html
Wählen Sie im Dropdown-Menü Wörterbücher das zu exportierende Wörterbuch aus.
Klicken Sie auf „Exportieren“ > „Vollständige XLIFF-Optionen für XX exportieren“, wobei XX der aus zwei Buchstaben bestehende Sprach-Code (etwa „DE“ oder „FR“) ist.
Die XLIFF-Datei wird in einer neuen Registerkarte oder einem neuen Fenster geöffnet.
Verwenden Sie die Befehle des Webbrowsers, um die Seite als Datei in Ihrem Dateisystem zu speichern, z. B. "Datei"> "Seite speichern unter".
Führen Sie die folgenden Schritte aus, um alle oder nur einige der englischen Zeichenfolgen zu exportieren.
http://<host>:<port>/libs/cq/i18n/translator.html
Importieren Sie eine XLIFF-Datei in ein Wörterbuch, um das Wörterbuch zu füllen. Wenn das Wörterbuch eine Übersetzung für eine englische Zeichenfolge enthält und die XLIFF-Datei eine andere Übersetzung für dieselbe Zeichenfolge enthält, wird die Wörterbuchübersetzung ersetzt.
http://<host>:<port>/libs/cq/i18n/translator.html
Fügen Sie vom Übersetzungs-Tool unterstützte Sprachen hinzu, die Benutzern auf Ihren Webseiten angezeigt werden, oder entfernen Sie sie.
Die Wörterbuchtabelle des Übersetzer-Tools umfasst folgende Sprachen:
Gehen Sie wie folgt vor, um Sprachen hinzuzufügen oder zu entfernen.
Erstellen Sie mit CRXDE Lite einen neuen Knoten:
/etc/languages
Erstellen Sie in diesem Knoten eine Eigenschaft:
Name: languages
Typ: Multi-String
Wert: die Liste der Sprachen, die angezeigt werden sollen. Beispiel:
Die Sprach-Codes müssen in Kleinbuchstaben geschrieben sein.
Klicken Sie in CRXDE Lite auf Alle speichern und laden Sie den Übersetzer neu. Das Raster wird aktualisiert und zeigt nun die definierten Sprachen an.
Der Übersetzer speichert nur Übersetzungen für Sprachen, die tatsächlich im Wörterbuch vorhanden sind (sich also unter dem Wörterbuchpfad befinden; zum Beispiel /apps/myProject/i18n
).
Achten Sie darauf, dass diese den im Raster dargestellten Sprachen entsprechen.
Nachdem Sie ein Wörterbuch für eine neue Sprache in Ihrer AEM-Instanz definiert haben, müssen Sie sie für die Autoren verfügbar machen, damit diese sie auswählen können (zum Beispiel zur Nutzung in Voreinstellungen):
Gehen Sie wie folgt vor, um die Liste mit den Sprachen zu ändern, die in der Sicherheitskonsole unter Voreinstellungen verfügbar sind:
Erstellen Sie eine Überlagerung in Ihrem Anwendungs-Code für:
/libs/cq/security/widgets/source/widgets/security/Preferences.js
and update as required.
Nehmen Sie an Ihrer Anwendung folgende Änderungen vor, um die Sprache in den Voreinstellungen Ihrer Websites-Konsole verfügbar zu machen:
Erstellen Sie eine Überlagerung für die Struktur unter:
/libs/cq/security/content/tools/userProperties
Aktualisieren Sie die Sprachliste innerhalb der Überlagerung unter:
items/common/items /lang/options
Speichern Sie alles und laden Sie die entsprechende Konsole neu.
Verschiedene Länder verwenden dieselbe Sprache, zum Beispiel die USA, Großbritannien und Australien, alle verwenden Englisch. Dies wird durch einen Code angegeben, der sowohl die Sprache als auch das Land umfasst – beispielsweise en_GB
, en_US
und en_AU
.
Die Standardländer werden verwendet, wenn Flags angezeigt werden (z. B. im Dialogfeld "Sprachkopie"), um das Land für einen Sprachcode aufzulösen.
Bei Lokalisierungen, die vom Übersetzer oben verwaltet werden, funktioniert nur die genaue Sprache. Wenn im Dropdown-Menü mit den Spracheinstellungen en_uk
verwendet wird, muss auch das Repository ein Wörterbuch für en_uk
enthalten.
So ändern Sie die Standarddefinitionen:
Eine Sprachliste ist unter dem folgenden Pfad gespeichert:
/libs/wcm/core/resources/languages
Überlagern Sie sie, indem Sie sie in das folgende Verzeichnis kopieren:
/apps/wcm/core/resources/languages
Ändern oder erweitern Sie die Liste dort. Die Eigenschaft defaultCountry
auf einem Sprachknoten (z. B. ja
) muss den vollständigen Code enthalten, z. B. ja_jp
, die jp
als Standardland für die Sprache ja
.
Aktualisieren Sie den CQ WCM Language Manager.
Sprachliste:
Der Pfad zur Sprachliste im Repository Legen Sie diese Option auf den Ort für die Überlagerung fest:
/apps/wcm/core/resources/languages
Dies ist über die OSGi-Web-Konsole möglich:
https://<hostname>:<port-number>/system/console/configMgr/com.day.cq.wcm.core.impl.LanguageManagerImpl
Integrieren Sie Ihre Wörterbücher in die Versionsverwaltung Ihrer AEM. Schließen Sie beispielsweise das Wörterbuch in das Inhaltspaket Ihrer Anwendung ein, um es für die Veröffentlichungsinstanz bereitzustellen. Diese Strategie bietet die folgenden Vorteile:
Des Weiteren empfiehlt es sich, Wörterbuchzeichenfolgen im Rahmen des regulären Software-Entwicklungszyklus zu testen.
Regelmäßige Veröffentlichungsfunktionen oder Replikation sollten nicht für Wörterbücher verwendet werden. Stattdessen sollten Wörterbücher genauso behandelt werden wie Code und Konfiguration. Dazu gehört die Verwendung der Quell-Code-Kontrolle zur Verfolgung von Änderungen und die Verwendung von Inhaltspaketen zur Anwendung von Änderungen auf die Autoren- und Veröffentlichungsinstanz.
Bei Verwendung von Dispatcher müssen Sie zwischengespeicherte Seiten ungültig machen, um neue Wörterbuchzeichenfolgen in gerenderte Komponenten-Zeichenfolgen einzuschließen.