AEM stellt eine Konsole für die Verwaltung der verschiedenen Übersetzungen von Texten bereit, die auf der Komponentenbenutzeroberflä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. Informationen zum Übersetzen von Seiteninhalten oder benutzergenerierten Inhalten finden Sie in Übersetzen von Inhalten für mehrsprachige Sites bzw. in Übersetzen von benutzergenerierten Inhalten.
Bearbeiten Sie nur Wörterbücher, die für Ihr Projekt erstellt werden und sich unter /apps
befinden.
In diesem Tool sind auch AEM-Systemwörterbücher verfügbar. Die AEM-Systemwörterbücher dürfen nicht geändert werden, da dies zu Problemen mit der AEM-Benutzeroberfläche führen kann. Änderungen können außerdem bei einem Upgrade 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. Darüber hinaus können Sie Wörterbücher zur Übersetzung in das XLIFF-Format konvertieren und die Übersetzungen anschließend wieder in die Wörterbücher importieren.
Über diese Konsole ist es auch möglich, die i18n-Wörterbücher einem Übersetzungsprojekt hinzuzufügen. Sie können entweder ein neues Projekt erstellen oder ein bereits vorhandenes Projekt verwenden.
Klicken Sie auf Wörterbuch übersetzen.
Klicken Sie je nach Bedarf auf „Erstellen“ oder auf „Hinzufügen“. 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 Zeichenfolgen für die Benutzeroberfläche. 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 neu. Daraufhin steht der Wörterbuchpfad (beispielsweise /apps/myProject/i18n
) in der Dropdown-Auswahl auf der Symbolleiste zur Verfügung. Wählen Sie diese aus, um mit dem Hinzufügen von Zeichenfolgen und deren Übersetzungen zu beginnen.
Der Übersetzer speichert Übersetzungen nur für Sprachen, die tatsächlich unter dem Pfad vorhanden sind (zum Beispiel /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.
Die AEM-Systemwörterbücher dürfen nicht geändert werden, da dies zu Problemen mit der AEM-Benutzeroberfläche führen kann. Änderungen können außerdem bei einem Upgrade verloren gehen. AEM-Systemwörterbücher befinden sich unter /libs
.
Fügen Sie einem Wörterbuch englische Zeichenfolgen hinzu, die Ihre Komponente internationalisiert hat. Fügen Sie nur internationalisierte Zeichenfolgen hinzu, um keine Ressourcen für die Übersetzung nicht verwendeter Zeichenfolgen zu vergeuden.
Die Zeichenfolgen, die Sie einem Wörterbuch hinzufügen, müssen jeweils exakt der im Code angegebenen Zeichenfolge entsprechen. Wenn die englische Standardzeichenfolge aus dem Code nicht der englischen Zeichenfolge in einem Wörterbuch entspricht, wird die übersetzte Zeichenfolge nicht auf der Benutzeroberfläche angezeigt, wenn sie benötigt wird. Bei Zeichenfolgen muss die Groß-/Kleinschreibung beachtet werden.
Angeben von Übersetzungshinweisen
Verwenden Sie die Kommentareigenschaft der Wörterbuchzeichenfolge, um den Übersetzer mit Informationen zur Bedeutung der Zeichenfolge bei seiner Arbeit zu unterstützen. Benutzer können die Bedeutung mehrdeutiger Wörter in der Regel anhand der Benutzeroberfläche erschließen. Der Übersetzer sieht die Zeichenfolge allerdings nicht im Kontext der Benutzeroberfläche. Mit einem Übersetzungshinweis können mögliche Mehrdeutigkeiten beseitigt werden. 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 ermöglichen auch die Unterscheidung identischer Zeichenfolgen mit unterschiedlicher Bedeutung. So kann beispielsweise das Wort „Search“ ein Verb oder ein Substantiv sein, weshalb das Wörterbuch zwei Einträge mit unterschiedlichen Übersetzungshinweisen enthalten muss. Der Übersetzungshinweis ist auch in dem Code enthalten, der die Zeichenfolge anfordert, sodass auf der Benutzeroberfläche die korrekte Zeichenfolge 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, wenn sich diese im Code ändern oder aus dem Code entfernt werden. Wenn Sie eine Zeichenfolge ändern, wird die ursprüngliche Zeichenfolge beibehalten und eine neue Zeichenfolge erstellt, die die Änderung beinhaltet. Vergewissern Sie sich vor dem Entfernen einer Zeichenfolge, dass sie in 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ü sind Wörterbücher mit ihrem Repositorypfad angegeben.
Klicken Sie über der Tabelle mit den Zeichenfolgen und Übersetzungen auf „Hinzufügen“.
Geben Sie im Feld „Zeichenfolge“ des Dialogfelds „Zeichenfolge hinzufügen“ die englische Zeichenfolge ein. Geben Sie bei Bedarf im Kommentarfeld 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 Zeichenfolge, die Sie ändern möchten.
Klicken Sie im Dialogfeld „Zeichenfolge bearbeiten“ auf „Zeichenfolge oder Kommentar ändern (erstellt eine Kopie)“.
Ändern Sie die Zeichenfolge oder den Kommentar und klicken Sie anschließend auf „OK“.
Klicken Sie auf „Speichern“.
Gehen Sie wie folgt vor, um eine Zeichenfolge aus einem Wörterbuch zu entfernen:
Wählen Sie im Dropdown-Menü „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.
Mit Kommentar: Zeigt Elemente mit Kommentaren für Übersetzer an.
Fehlende Übersetzungen: Zeigt Elemente an, bei denen für mindestens eine Sprache keine Übersetzung vorliegt.
Nachdem Sie die englische Zeichenfolge einem Wörterbuch hinzugefügt haben, können Sie Übersetzungen der Zeichenfolge hinzufügen. Sie können auch das Wörterbuch exportieren, um es von einem Drittanbieter übersetzen zu lassen.
Wählen Sie Ihr projektspezifisches Wörterbuch aus, da es den Pfad im Repository angibt, unter dem sich die Übersetzungen befinden. Wählen Sie unter Wörterbücher also beispielsweise Folgendes aus:
/apps/myProject/i18n
Bearbeiten Sie nur Wörterbücher, die für Ihr Projekt erstellt werden und sich unter /apps
befinden.
In diesem Tool sind auch AEM-Systemwörterbücher verfügbar. Die AEM-Systemwörterbücher dürfen nicht geändert werden, da dies zu Problemen mit der AEM-Benutzeroberfläche führen kann. Änderungen können außerdem bei einem Upgrade 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 die Wörterbuchzeichenfolgen von einem Drittanbieter übersetzt werden können.
Wenn Sie eine XLIFF-Datei exportieren und eine Sprache einschließen, muss diese Sprache in der Knotenstruktur des Wörterbuchs im Repository enthalten sein. Ist die Sprache nicht enthalten, 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 Wörterbuch aus, das Sie exportieren möchten.
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 auf einer neuen Registerkarte oder in einem neuen Fenster geöffnet.
Speichern Sie die Seite mithilfe der Befehle des Webbrowsers als Datei auf Ihrem System (beispielsweise über „Datei“ > „Seite speichern unter“).
Gehen Sie wie folgt vor, um alle oder 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. Falls im Wörterbuch eine Übersetzung für eine englische Zeichenfolge enthalten ist und die XLIFF-Datei eine andere Übersetzung für die gleiche Zeichenfolge enthält, wird die Übersetzung im Wörterbuch 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 mithilfe von CRXDE Lite einen neuen Knoten:
/etc/languages
Erstellen Sie in diesem Knoten eine Eigenschaft:
Name: languages
Typ: Multi-String
Wert: Eine Liste mit den 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.
In vielen Ländern wird die gleiche Sprache gesprochen – beispielsweise Englisch in den USA, in Großbritannien und in Australien. 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 Flaggen angezeigt werden (etwa im Dialogfeld zum Kopieren einer Sprache) und dienen zum Auflösen des Landes für einen Sprach-Code.
Für Lokalisierungen, die wie beschrieben durch den Übersetzer 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
in einem Sprachknoten (zum Beispiel ja
) muss den vollständigen Code enthalten – beispielsweise ja_jp
, um jp
als Standardland für die Sprache ja
zu definieren.
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
Hierzu können Sie die OSGi-Web-Konsole verwenden:
https://<hostname>:<port-number>/system/console/configMgr/com.day.cq.wcm.core.impl.LanguageManagerImpl
Integrieren Sie Ihre Wörterbücher in die Releaseverwaltung Ihrer AEM-Anwendungen. Schließen Sie das Wörterbuch beispielsweise in das Inhaltspaket Ihrer Anwendung ein, um es für die Veröffentlichungsinstanz bereitzustellen. Diese Strategie bietet folgende 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.