Integrationen

Adobe Experience Manager - AEM (TMS)

Inhalte werden von Phrase Language AI maschinell aus dem Englischen übersetzt.

Verfügbar für

  • Enterprise-Plan

Kontaktiere Vertrieb für Fragen zur Lizenzierung.

Verfügbar für

  • Enterprise-Plan (Legacy)

Kontaktiere Vertrieb für Fragen zur Lizenzierung.

Unterstützte Versionen

Das Phrase Translation Plugin für Adobe Experience Manager folgt denselben Produktsupportzeiträumen wie Adobe Experience Manager. Unter https://helpx.adobe.com/support/programs/eol-matrix.html gibt es Informationen zu Supportzeiträumen.

Sobald eine Version von Adobe Experience Manager das Ende des Kernsupports erreicht, wird das Plugin von Phrase nicht mehr gepflegt. Das Installationsprogramm bleibt verfügbar, aber es werden keine weiteren Verbesserungen oder Korrekturen mehr implementiert.

  • Plugin-Version 2.x unterstützt 6.5.

  • Plugin-Version 3.x unterstützt AEM as a Cloud Service.

Plugin-Versionshinweise

Phrase-Konfiguration

Kontextbezogene Vorschau konfigurieren

Die kontextbezogene Vorschau bietet eine Echtzeit-Vorschau des Original- oder übersetzten Textes sowohl im CAT-Webeditor als auch im CAT-Desktop-Editor.

Tabellen, Spalten, verschiedene Grafiken, Formatierungen und Schriftarten (sofern von Benutzern installiert) werden unterstützt. Die Funktion soll beim Übersetzen Kontext bieten und ist keine perfekte Darstellung des Original- oder fertigen Dokuments; einige visuelle Unterschiede sind zu erwarten. Sie kann auch durch das Aktivieren/Deaktivieren der Option Laden externer Inhalte in Editoren erlauben in den Zugriffs- und Sicherheitseinstellungen beeinflusst werden.

Phrase-Anforderungen:

  • Für den Zugriff auf die On-Premise-Installation muss die Unternehmensfirewall durchschritten werden.

  • In der Authoring-Umgebung ist eine Authentifizierung erforderlich.

Firewall-Konfiguration für On-Premise-Installation:

  • Die Installation muss von den IP-Adressen des Phrase-Servers aus zugänglich sein. Unter Phrase Servers IP Addresses steht die aktuelle Liste.

  • Der Domainname muss extern auflösbar sein.

Hinweis

Einige HTML-Tags stellen ein Risiko dar und werden vom CAT-Editor bei der Vorschau aus diesem HTML entfernt. Dies dient dem Schutz der Privatsphäre und der Sicherheit der Benutzerdaten.

Beispiele für entfernte Tags sind FORM, IFRAME, SCRIPT, SVG, VIDEO, EMBED, OBJECT oder background-image CSS-Eigenschaften.

Phrase TMS-Einstellungen

Voraussetzung: Für die Anzeige unveröffentlichter Seiten ist ein Adobe Experience Manager-Benutzer mit den erforderlichen Mindestberechtigungen anzulegen.

Tipp

Ein neuer Benutzer namens phrase-preview ist anzulegen und der Gruppe Authors hinzuzufügen.

  1. Auf der Seite Einstellungen Setup_gear.png ist im Abschnitt Integrationen nach unten zu scrollen.

  2. Klicke auf Konnektoren.

    Die Seite Konnektoren wird geöffnet.

  3. Auf New connector ist zu klicken.

    Die Seite Create connector wird geöffnet.

  4. Der Typ im Feld Type ist auf Adobe Experience Manager Live Preview zu ändern und dem Connector ist ein Name zuzuweisen.

  5. Der Host ist einzugeben.

    Es ist die Host-Adresse der Adobe Experience Manager-Installation anzugeben (z. B. https://aem-author.example.org/ oder https://author-X-Y.adobeaemcloud.com/).

    Der Domainname muss extern auflösbar sein (keine Intranet-Domain).

  6. Benutzername und Passwort sind einzugeben.

    Single Sign-On (SSO) und Zwei-Faktor-Authentifizierung (2FA) werden nicht unterstützt. Falls beim Drupal-Konto SSO oder 2FA erforderlich ist, ist ein dediziertes Dienstkonto zu verwenden, das von beiden ausgenommen ist.

  7. Zur Änderung von Links im Seiten-HTML ist eine URL rewrite rule in Form eines regex anzugeben.

    Beispiel:

    Zum Ersetzen eines vollständigen Gebietsschemacodes durch nur den Sprachcode in https://example.org/en-us/images/sample.jpg ist nach /([a-z]{2})-[a-z]{2}/ zu suchen und dieser durch /$1/ zu ersetzen.

    Links in den Tags <img src=\"\" data-lazy-src=\"\", <link href=\"\", <script src=\"\", <iframe src=\"\" sowie Links in CSS-Stilen und referenzierten CSS-Dateien (url: ('')) werden umgeschrieben.

  8. Klicke auf Speichern.

    Der Konnektor wird der Liste auf der Seite Konnektoren hinzugefügt.

Einen Connector löschen

So wird ein Connector gelöscht:

  1. Auf der Seite Integrations ist der zu löschende Connector auszuwählen.

  2. Auf Delete ist zu klicken.

    Das Fenster Delete connector wird geöffnet.

  3. Das Wort „delete“ ist einzugeben und anschließend auf Delete zu klicken.

    Der Connector wird gelöscht und die Liste der Connectoren wird angezeigt.

Hinweis

Ein Connector kann nicht gelöscht werden, solange er noch mit unvollständigen Jobs in einem Projekt verknüpft ist, einschließlich Jobs, die sich im Papierkorb befinden. Der Versuch, einen solchen Connector zu löschen, führt zu der Fehlermeldung „Failed to delete connector“.

Lösung: Das mit dem Connector verknüpfte Projekt ist zu öffnen und alle verbleibenden Jobs sind entweder abzuschließen oder zu löschen. Auf der Seite Settings/Recycle bin ist der Papierkorb zu leeren, um alle noch mit dem Connector verknüpften Jobs zu entfernen. Ein erneuter Löschversuch des Connectors ist durchzuführen.

Hinweis

Einige HTML-Tags stellen ein Risiko dar und werden vom CAT-Editor bei der Vorschau aus diesem HTML entfernt. Dies dient dazu, die Datensicherheit und die Privatsphäre der Nutzer zu gewährleisten.

Beispiele für entfernte Tags sind FORM, IFRAME, SCRIPT, SVG, VIDEO, EMBED, OBJECT oder background-image CSS-Eigenschaften.

Übersetzungs-Workflow konfigurieren

Zur Konfiguration der Job-Verarbeitung für Adobe Experience Manager ist eine Projektvorlage zu erstellen, die den jeweiligen Anforderungen entspricht:

  • Unter Access and Security ist die Option Allow loading of external content in Phrase CAT editor zu aktivieren.

Bei Verwendung älterer Versionen müssen ein service und ein submitter portal erstellt und validiert werden. Zur Validierung der Konfiguration sind die folgenden Schritte durchzuführen:

  1. Ein unvollständiges Übersetzungsprojekt ist zu öffnen.

  2. Aus dem Menü der Job-Kachel ist Export auszuwählen.

  3. Suchen Sie die .XML-Datei, die den Quelltext enthält, in der heruntergeladenen ZIP-Datei.

  4. In Phrase ist zu den für die Integration verwendeten Submitter portals zu navigieren und die aufgeführte URL zu öffnen.

  5. Das SP-Formular ist auszufüllen, die .XML-Datei hochzuladen, die E-Mail-Adresse zu validieren und das Formular abzusenden.

  6. Zu überprüfen ist, ob das neue Projekt wie vorgesehen aus der Projektvorlage erstellt wurde.

AEM Konfiguration

Plugin installieren

Das neueste Plugin-Paket ist von der Seite Phrase Ecosystem in Phrase über die Schaltfläche Download herunterzuladen. Das Plugin ist nur für Organisationen verfügbar, die es erworben haben.

On-Premise AEM

  1. Beim Migrieren von 6.2 oder 6.3 auf 6.4 oder höher sind alle Legacy Cloud Services-Konfigurationen aus dem Classic UI Admin-Tool (/miscadmin#/etc/cloudservices/memsource-translation zu entfernen.

    Alle Konfigurationen verschwinden aus Legacy Cloud Services > Memsource Translation Plugin for AEM.

  2. Unter Tools > Deployment ist zu Packages zu navigieren.

  3. Die vorherige Version des Plugins ist gegebenenfalls zu deinstallieren.

  4. Es ist Upload package auszuwählen und die Installationsdatei hochzuladen.

  5. Die Option Force Upload ist zu aktivieren und das Formular ist abzusenden.

AEM as a Cloud Service

Ist das Plugin bereits installiert, so ist mit Schritt 4 fortzufahren.

  1. Das auf dem lokalen Dateisystem basierende Maven-Repository ist dem Stammverzeichnis des AEM Cloud Service-Projekts (pom.xml) hinzuzufügen:

    repositories {
    ...
      Repository
        <id>project.local</id>
        <name>Projekt</name>
        <url>file:${maven.multiModuleProjectDirectory}/repository</url>
      Repository
    ...
    repositories {
  2. Die Plugin-Abhängigkeit ist zu all/pom.xml hinzuzufügen:

    <dependency>
      <groupId>com.memsource</groupId>
      <artifactId>aem-memsource-plugin.all</artifactId>
      <version>X.X.X</version>
      <type>zip</type>
    </dependency>
  3. Der eingebettete Block ist der Konfiguration von all/pom.xml -> filevault-package-maven-plugin hinzuzufügen:

    ...
    Plug-in
      <groupId>org.apache.jackrabbit</groupId>
      <artifactId>filevault-package-maven-plugin</artifactId>
      <extensions>true</extensions>
      Konfiguration
      <group>meine_pakete</group>
      <embeddeds>
       <embedded>
         <groupId>com.memsource</groupId>
         <artifactId>aem-memsource-plugin.all</artifactId>
         <type>zip</type>
         <target>/apps/aem-memsource-plugin-packages/application/install</target>
       </embedded>
    ...
  4. Füge das Plugin dem lokalen Maven-Repository hinzu. Führe den folgenden Befehl vom Stammverzeichnis des AEM Cloud Service-Projekts aus und ersetze den Platzhalter {memsource.plugin.path} durch den Pfad zum Plugin (z. B. /tmp/aem-memsource-plugin.all-3.0.1.zip):

    mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file -Dfile={memsource.plugin.path} -DlocalRepositoryPath=./repository/ -Dpackaging=zip
    
  5. Lege die korrekte Plugin-Version in all/pom.xml fest (z. B. 3.0.1):

    <dependency>
      <groupId>com.memsource</groupId>
      <artifactId>aem-memsource-plugin.all</artifactId>
      <version>3.0.1</version>
      <type>zip</type>
    </dependency>
    

Konfiguriere das Plugin

Es sind zwei Konfigurationen erforderlich:

  • Teilen Sie dem System mit, dass Phrase existiert, indem Sie es als Translation Service Provider hinzufügen und angeben, wie eine Verbindung zum TMS hergestellt werden soll.

  • Teilen Sie Adobe Experience Manager mit, wann und wie Phrase verwendet werden soll, indem Sie die Translation Integration Configuration konfigurieren.

    Beispiel:

    Verwenden Sie Phrase für Inhalte mit hoher Sichtbarkeit, aber einen Anbieter für maschinelle Übersetzung für Community-Inhalte.

Fügen Sie Phrase als Translation Service Provider hinzu

Folge diesen Schritten:

  1. Gehe unter Tools, General zum Configuration Browser.

  2. Erstellen Sie einen Konfigurationscontainer für jeden Phrase-Dienst (z. B. eine Konfiguration für die menschliche Übersetzung und eine separate Konfiguration für die reine maschinelle Übersetzung).

  3. Gehen Sie in Cloud Services zu Translation Cloud Services.

  4. Erweitere das Verzeichnis conf.

  5. Erstelle eine neue Konfiguration und gib die folgenden Informationen ein:

    • Hostname: Die Standard-URL lautet https://cloud.memsource.com/web/ und kann abweichen, wenn eine benutzerdefinierte URL verwendet wird.

    • Username und Password (muss eine PM-Rolle mit aktivierter Option Modify global server settings in den Benutzerrechten sein).

    Klick auf Connect.

  6. Wähle weitere Optionen aus und schließe die Konfiguration.

    • Gruppieren Sie alle Übersetzungsaufträge in einem einzigen Phrase-Projekt 

      Alle Übersetzungsaufträge innerhalb eines AEM-Projekts werden auch innerhalb eines Phrase-Projekts erstellt.

      Wichtig

      Diese Option funktioniert nicht korrekt, wenn Set job to completed once pre-translated und Set project to completed once all jobs are completed gleichzeitig in den Einstellungen der Phrase project template aktiviert sind.

    • Set Phrase job status to Delivered after import to AEM 

    • Analysen generieren 

      Wenn diese Option aktiv ist, werden nach dem Senden eines Übersetzungsauftrags automatisch Analysen generiert, sobald die Dateien importiert werden. Analysen werden immer by language generiert, unabhängig von den Einstellungen der Projektvorlage. 

    • Generate quotes 

      Wenn die automatische Generierung von Analysen aktiviert ist, können auf Basis dieser Analysen Angebote erstellt werden.

Bei Verwendung älterer Versionen sind auch Informationen zu service und submitter portal erforderlich.

Translation Integration einrichten

Bei Verwendung des Phrase Translation Plugin für AEM werden alle Dateien in den Übersetzungsaufträgen zur Übersetzung eingereicht und somit von Phrase zurückgegeben. Verwende die Projektkonfiguration Translation Integration, um zu verhindern, dass nicht übersetzbare Assets oder Referenzmaterialien in die Projekte aufgenommen werden.

  1. Gehe in Tools zu Cloud Services und klick auf Translation Cloud Services.

  2. Erstelle eine neue Konfiguration speziell für die Übersetzung.

    • Stelle sicher, dass Translate Component Strings und Translate Tags nicht ausgewählt sind.

    • Setze Translate page assets auf Do not translate.

    • Setze auf der Registerkarte Assets den Translation Workflow auf Do not translate.

  3. Wenn ein Projekt weiterhin nicht übersetzbare Assets oder Referenzmaterialien enthält, markiere und lösche diese direkt in Phrase.

Übersetzungsintegration auf Sites anwenden

Konfiguriere den standardmäßigen Phrase Translation Provider mit verschiedenen Teilen der Site-Taxonomie. Konfiguriere den Provider am Root-Knoten der Site. Alle untergeordneten Seiten übernehmen die Einstellung. Überschreibe die Einstellung an dem Knoten, der eine andere Anbieterkonfiguration nutzen soll (z. B. verwendet die gesamte Website menschliche Übersetzung, während der Community-Bereich maschinelle Übersetzung nutzt).

Wende die Übersetzungsintegration an:

  • Wähle auf der Registerkarte Advanced die neu erstellte Konfiguration als Cloud-Konfiguration aus.

Beim Hinzufügen von Inhalten von diesen Seiten werden nur übersetzbare Inhalte hinzugefügt. Wenn ein Projekt über das References Panel erstellt wird, wird es automatisch so eingerichtet, dass es die mit der Stammseite verknüpfte Cloud-Konfiguration verwendet.

Inhalt zur Übersetzung übermitteln

Um Inhalte (Sites, Assets) zur Übersetzung zu übermitteln, erstelle ein Übersetzungsprojekt in Adobe Experience Manager. Projekte können manuell im Bereich „Projekte“ erstellt werden oder integrierte Workflows nutzen, um den Aufwand zu minimieren.

Um ein Projekt für die Übermittlung über die integrierten Workflows vorzubereiten, führe diese Schritte aus:

  1. Navigiere in der Sites-Ansicht zur Seite, wähle sie aus und öffne das References Panel.

  2. Klick auf Language Copies und erweitere den Bereich Create & Translate am unteren Rand der Leiste.

  3. Wähle die Zielsprachen aus und deaktiviere optional Select all sub-pages.

  4. Wähle Create Multi-language Translation Project.

    Wenn es mehrere Zielsprachen gibt, wird für jede Sprache ein separates Projekt erstellt.

  5. Gib den Projekttitel ein und klick auf Create.

  6. Navigiere zum Projekt im Bereich Projects und öffne es.

  7. Klick auf die Auslassungspunkte auf der ersten Kachel, um die erweiterten Projekteinstellungen zu öffnen.

    Bei ordnungsgemäßer Konfiguration werden die in den obigen Schritten erstellten Konfigurationen referenziert.

  8. Um einen Auftrag zu übermitteln, wähle Start aus dem Menü der Auftragskachel.

    Ein neues Projekt wird innerhalb weniger Minuten erstellt.

    • Nach dem Import werden Anbieter aus der Projektvorlage zugewiesen und der Status des AEM-Auftragselements wird auf Committed for translation gesetzt.

    • Sobald der Auftrag von einem Anbieter akzeptiert wurde, ändert sich der Status des AEM-Auftragselements auf Translation in progress.

    • Der Status des AEM-Auftragselements ändert sich auf Cancelled, wenn der Auftrag gelöscht oder storniert wird.

    Tipp

    Adobe Experience Manager fragt den Auftragsstatus in einem Zeitplan ab, der in der Translation Platform Configuration konfiguriert ist, auf die über die Web Console zugegriffen wird.

    Wenn die Eigenschaft Scheduler Cron auf eine häufige Ausführung eingestellt wird (z. B. 0 0/5 * * * ? * löst alle 5 Minuten eine Aktualisierung des Übersetzungsauftragsstatus aus).

    Das Aktualisieren der Projektdetailseite erzwingt einen Abruf.

  9. Übersetze in Phrase die Projektaufträge und setze deren Status auf Completed. Nach Abschluss werden die Aufträge wieder in AEM importiert.

  10. Bei Ablehnung wird der erste Workflow-Schritt des Auftrags auf Emailed gesetzt und die verbleibenden Workflow-Schritte auf New.

  11. Sobald ein AEM-Auftragselement akzeptiert wurde, wird der Auftragsstatus auf Delivered aktualisiert, wie in den Plugin-Einstellungen konfiguriert.

Weitere Details zum Erstellen von Übersetzungsprojekten über das Referenz-Panel findest du in der Adobe-Dokumentation.

Verschiedenes

Benutzerdefinierte Sprachzuordnung

On-Premise AEM

Um Adobe Experience Manager-Sprachen verschiedenen Sprachen in Phrase zuzuordnen (z. B. zh zu zh_tw), folge diesen Schritten.

Die Zuordnung gilt sowohl für Quell- als auch für Zielsprachen.

  1. CRXDE öffnen (/crx/de/index.jsp).

  2. Zum Ordner /apps/memsource-connector/language-mapping/ navigieren.

  3. Neuen Knoten erstellen.

  4. Adobe Experience Manager-Sprachcode als Name verwenden (z. B. zh) und Type: nt:unstructured beibehalten.

  5. Eigenschaft hinzufügen:

    • Name: memsourceLanguage

    • Typ Zeichenfolge

    • Wert: Sprachcode (z. B. zh_tw)

  6. Auf Alle speichern klicken.

Nicht zugeordnete Sprachcodes werden unverändert gesendet.

AEM as a Cloud Service

Um Sprachzuordnungen in AEM Cloud Services hinzuzufügen, folge diesen Schritten:

  1. Erstelle eine .content.xml-Datei im Ordner /conf/aem-memsource-plugin/language-mapping/.

  2. Öffne die erstellte Datei und kopiere Folgendes hinein:

    <?xml version="1.0" encoding="UTF-8"?>
    <jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0"
        jcr:primaryType="sling:Folder"/>
  3. Erstelle eine .content.xml-Datei im Ordner /conf/aem-memsource-plugin/language-mapping/zh-cn.

  4. Öffne die erstellte Datei und kopiere Folgendes hinein:

    <?xml version="1.0" encoding="UTF-8"?>
    <jcr:root xmlns:jcr="http://www.jcp.org/jcr/1.0"
              jcr:primaryType="nt:unstructured"
              memsourceLanguage="zh_cn">
    </jcr:root>
  5. Fügen Sie die in den vorherigen Schritten erstellten Pfade der Datei filter.xml hinzu, die Sie unter ui.content/src/main/content/META-INF/vault/filter.xml finden:

    <?xml version="1.0" encoding="UTF-8"?>
    <workspaceFilter version="1.0">
    ...
        <filter root="/conf/aem-memsource-plugin" mode="update"/>
        <filter root="/conf/aem-memsource-plugin/language-mapping" mode="update"/>
    </workspaceFilter>

Projekt-IDs

Sobald ein Übersetzungsauftrag übermittelt wurde, werden die Projekt-ID und die UID im /content/projects/project-name/jcr:content/dashboard/gadgets/translationjob als PROPERTY_MEMSOURCE_PROJECT_ID- und PROPERTY_MEMSOURCE_PROJECT_UID-Eigenschaften gespeichert.

Nutze die IDs zur Anzeige in der AEM-Umgebung oder in APIs, um die Plugin-Funktionalität zu erweitern.

AEM-Fehlerbehebung

Problem

Ursache(n)

Die Lösung

Cloud Manager meldet eine Warnung „Query Without Index“ für eine Abfrage zu translationObjectID unter /content/projects

Der Phrase AEM-Connector lokalisiert Knoten von Übersetzungsaufträgen anhand einer zur Laufzeit zugewiesenen translationObjectID. Dieser Bezeichner existiert nicht als bereits vorhandene Repository-Eigenschaft, daher kann AEM as a Cloud Service ihn nicht im Voraus indizieren und greift auf eine vollständige Durchsuchung zurück, was vom Cloud Manager markiert wird.

Füge eine benutzerdefinierte Oak/Lucene-Indexdefinition vom Typ oak:QueryIndexDefinition hinzu, die auf /content/projects begrenzt ist, mit einem Eigenschaftsindex für translationObjectID. Stelle die Indexdefinition über die Code-Pipeline bereit, anstatt sie zur Laufzeit zu erstellen, und validiere sie in einer Nicht-Produktionsumgebung, bevor du sie in der Produktionsumgebung bereitstellst. Begrenze den Index auf die Projektordnerstruktur in der AEM-Instanz und schränke ihn nach Möglichkeit auf bestimmte Projektordner ein, anstatt das gesamte /content/projects zu indizieren, da ein zu breit gefasster Index sich negativ auf die Leistung auswirken kann. Nach der Bereitstellung setzt AEM die Eigenschaft reindex der Indexdefinition auf false, sobald die Neuindizierung abgeschlossen ist. Dies bestätigt, dass die Neuindizierung fehlerfrei beendet wurde und keine weiteren Maßnahmen erforderlich sind.

War dieser Beitrag hilfreich?
★ ★ ★ ★ ★

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.