集成

Adobe Experience Manager - AEM (TMS)

文本由 Phrase Language AI 从英语机器翻译而得。

可用于

  • Enterprise 套餐

关于许可问题,请联系销售团队

包含在

  • Enterprise 套餐(原)

关于许可问题,请联系销售团队

支持的版本

适用于 Adobe Experience Manager 的 Phrase 翻译插件遵循与 Adobe Experience Manager 相同的产品支持周期。有关支持周期的信息,请参阅 https://helpx.adobe.com/support/programs/eol-matrix.html

一旦 Adobe Experience Manager 版本达到核心支持终止日期,Phrase 将不再维护该插件。安装程序将保持可用,但不会再实施任何改进或修复。

  • 插件版本 2.X 支持 6.5。

  • 插件版本 3.X 支持 AEM as a Cloud Service。

插件发行说明

Phrase 配置

配置上下文预览

上下文预览功能可在 CAT Web Editor 和 CAT Desktop Editor 中实时预览原文或译文。

支持表格、列、各种图形、格式和字体(如果由用户安装)。此功能旨在在翻译时提供上下文,并非原文或已完成文档的完美呈现;预计会出现一些视觉差异。它也可能受到在“访问和安全”设置中启用/禁用 允许在编辑器中加载外部内容 选项的影响。

Phrase 要求:

  • 穿过 Enterprise 防火墙以访问本地安装。

  • 验证进入创作环境。

本地安装的防火墙配置:

  • 安装必须能够从 Phrase 服务器 IP 地址访问。请参阅Phrase 服务器 IP 地址以获取当前列表。

  • 领域名称必须能够在外部解析。

注释

某些 HTML 标记存在风险,CAT Editor 在显示预览时会将其从该 HTML 中删除。这是为了确保用户的数据隐私和安全。

已删除标记的示例包括 FORMIFRAMESCRIPTSVGVIDEOEMBEDOBJECT 或 background-image CSS 属性。

Phrase TMS 设置

先决条件:创建一个具有查看未发布页面所需最低权限的 Adobe Experience Manager 用户。

提示

创建一个名为 phrase-preview 的新用户,并将该用户添加到 作者 组中。

  1. 在设置Setup_gear.png页面,下拉到集成部分。

  2. 单击连接器

    连接器页面打开。

  3. 点击新建连接器

    创建连接器页面随即打开。

  4. 类型更改为Adobe Experience Manager Live Preview并为连接器提供名称。

  5. 输入主机

    使用 Adobe Experience Manager 安装的主机地址(例如,https://aem-author.example.org/ 或 https://author-X-Y.adobeaemcloud.com/)。

    领域名称必须能够在外部解析(不能是内网领域)。

  6. 输入用户名和密码。

  7. 要修改页面 HTML 中包含的链接,请在正则表达式中提供URL 重写规则

    例如:

    要将完整的区域代码替换为https://example.org/en-us/images/sample.jpg中的语言代码,请查找/([a-z]{2})-[a-z]{2}/并将其替换为/$1/

    标记<img src=\"\" data-lazy-src=\"\"<link href=\"\", <script src=\"\"<iframe src=\"\"中的链接以及 CSS 样式和引用的 CSS 文件(url: (''))中的链接将被重写。

  8. 点击保存

    连接器添加到了连接器页面的列表中。

注释

某些 HTML 标记存在风险,CAT Editor 在显示预览时会将其从该 HTML 中删除。这是为了确保用户的数据隐私和安全。

已删除标记的示例包括 FORMIFRAMESCRIPTSVGVIDEOEMBEDOBJECT 或 background-image CSS 属性。

配置翻译工作流

要配置 Adobe Experience Manager 工作处理,请创建一个根据您的需求配置的项目模板:

  • 访问和安全 下,激活 允许在 Phrase CAT Editor 中加载外部内容 选项。

如果使用原版本,则需要创建并验证一个 服务 和一个 Submitter portal。要验证配置,请遵循以下步骤:

  1. 打开一个未完成的翻译项目。

  2. 工作 磁贴菜单中选择 导出

  3. 在下载的 zip 文件中找到包含原文的 .XML 文件。

  4. 在 Phrase 中,导航至用于集成的 Submitter portals 并打开列出的 URL。

  5. 填写 SP 表单,上传 .XML 文件,验证电子邮件并提交。

  6. 验证新项目是否已按配置从项目模板中创建。

AEM 配置

安装插件

本地部署 AEM

  1. 如果从 6.2 或 6.3 迁移到 6.4 及以上版本,请从 Classic UI 管理员工具中移除所有原云服务配置 (/miscadmin#/etc/cloudservices/memsource-translation)

    所有配置将从原云服务 > Memsource Translation 插件 for AEM 中消失。

  2. 工具部署 中,转到

  3. 如果适用,请卸载旧版本的插件。

  4. 选择 上传包 并上传安装文件。

  5. 勾选 强制上传 并提交。

AEM as a Cloud Service

如果已安装插件,请跳转至步骤 4。

  1. 将基于本地文件系统的 maven 存储库添加到 AEM 云服务项目根目录 pom.xml 中:

    <repositories>
    ...
      <repository>
        <id>project.local</id>
        <name>project</name>
        <url>file:${maven.multiModuleProjectDirectory}/repository</url>
      </repository>
    ...
    </repositories>
  2. 将插件依赖项添加到 all/pom.xml 中:

    <dependency>
      <groupId>com.memsource</groupId>
      <artifactId>aem-memsource-plugin.all</artifactId>
      <version>X.X.X</version>
      <type>zip</type>
    </dependency>
  3. 将 embedded 块添加到 all/pom.xml -> filevault-package-maven-plugin 配置中:

    ...
    <plugin>
      <groupId>org.apache.jackrabbit</groupId>
      <artifactId>filevault-package-maven-plugin</artifactId>
      <extensions>true</extensions>
      <configuration>
      <group>my_packages</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. 将该插件添加到本地 maven 存储库。从 AEM 云服务项目根目录运行以下命令,将 {memsource.plugin.path} 占位符替换为插件的路径(例如 /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. all/pom.xml 中设置正确的插件版本(例如 3.0.1):

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

配置插件

需要进行两项配置:

  • 通过将 Phrase 添加为翻译服务商并指定如何连接到 TMS,告知系统 Phrase 的存在。

  • 通过配置翻译集成配置,告知 Adobe Experience Manager 何时以及如何使用 Phrase。

    示例:

    对高可见度内容使用 Phrase,对社区内容使用机器翻译供应商。

添加 Phrase 作为翻译服务商

请遵循以下步骤:

  1. ToolsGeneral 中,转到 Configuration Browser

  2. 为每个 Phrase 服务创建一个配置容器(例如,一个用于人工翻译的配置,另一个用于纯机器翻译的配置)。

  3. Cloud Services 中,转到 Translation Cloud Services

  4. 展开 conf 目录。

  5. 创建一个新配置并输入以下信息:

    • Hostname:默认 URL 为 https://cloud.memsource.com/web/,但如果您或服务商使用自定义 URL,则可能会有所不同。

    • UsernamePassword(必须具有 PM 角色,并在用户权限中启用了 Modify global server settings 选项)。

    点击 Connect

  6. 选择其他选项并关闭配置。

如果使用原版本,则还需要 服务Submitter portal<2> 信息。

设置集成

使用适用于 AEM 的 Phrase 插件时,翻译工作中的所有文件都会被提交进行翻译,并因此从 Phrase 返回。使用项目 集成<1> 配置,以防止非译元素或参考资料被包含在项目中。

  1. 在“工具”中,转到 Cloud Services,点击 Translation Cloud Services

  2. 创建专门用于翻译的配置。

    • 确保未勾选 Translate Component StringsTranslate Tags

    • Translate page assets 设置为 Do not translate

    • Assets<1> 选项卡上,将 工作流 设置为 Do not translate

  3. 如果项目仍包含非译元素或参考资料,请直接在 Phrase 中标记并删除它们。

将集成应用于站点

使用站点分类的不同部分配置默认的 Phrase 服务商。在站点的根节点配置服务商。所有子页面都将继承此设置。在应使用不同服务商配置的节点处覆盖此设置(例如,整个站点使用人工翻译,但社区部分使用机器翻译)。

要应用翻译集成:

  • 高级 选项卡上,选择新创建的配置作为云配置。

从这些页面添加内容时,仅会添加可译的内容。如果从 引用面板 创建项目,它将自动设置为使用与根页面关联的云配置。

提交内容以进行翻译

要提交内容(站点、资产)以进行翻译,请在 Adobe Experience Manager 中创建一个翻译项目。项目可以在项目部分手动创建,也可以使用内置工作流来最大限度地减少工作量。

要准备一个用于通过内置工作流提交的项目,请遵循以下步骤:

  1. 站点 视图中,导航至该页面,选择它,然后打开 引用面板

  2. 点击 语言副本 并展开侧边栏底部的 创建和翻译 部分。

  3. 选择译文语言,可选择取消勾选 选择所有子页面

  4. 选择 创建多语言翻译项目

    如果有多种译文语言,将为每种语言创建一个单独的项目。

  5. 输入项目标题并点击 创建

  6. 导航至 项目 部分中的项目并将其打开。

  7. 点击第一个磁贴上的省略号以打开高级项目设置。

    如果配置正确,将引用上述步骤中创建的配置。

  8. 要提交工作,请从工作磁贴菜单中选择 开始

    几分钟内将创建一个新项目。

    • 导入后,将从项目模板分配提供程序,并将 AEM 工作条目状态设置为 已提交翻译

    • 一旦工作被服务商接受,AEM 工作条目状态将更改为 翻译中

    • 如果工作被删除或取消,AEM 工作条目状态将更改为 已取消

    提示

    Adobe Experience Manager 会按照在 翻译平台配置(通过 Web 控制台 访问)中配置的时间表轮询工作状态更新。

    调度程序 Cron 属性设置为频繁运行(例如 0 0/5 * * * ? * 会每 5 分钟触发一次翻译工作状态刷新)。

    刷新项目详细信息页面会强制执行拉取操作。

  9. 在 Phrase 中,翻译项目工作并将它们的状态设置为 已完成。完成后,工作会被导回 AEM。

  10. 如果被拒绝,工作的第一步工作流步骤被设置为 已发邮件,其余工作流步骤被设置为 新建

  11. 一旦 AEM 工作条目被接受,工作状态将更新为插件设置中配置的 已交付

有关使用引用面板创建翻译项目的更多详细信息,请参阅 Adobe 文档

其他

自定义语言映射

本地部署 AEM

要将 Adobe Experience Manager 语言映射到 Phrase 中的不同语言(例如 zh 到 zh_tw),请按照以下步骤操作。

该映射适用于原文和译文语言。

  1. 打开 CRXDE (/crx/de/index.jsp)。

  2. 浏览至 /apps/memsource-connector/language-mapping/ 文件夹。

  3. 创建一个新节点。

  4. 使用 Adobe Experience Manager 语言代码作为 名称(例如 zh),保持 类型: nt:unstructured

  5. 添加属性:

    • 名称: memsourceLanguage

    • 类型: 字符串

    • : 语言代码(例如 zh_tw)

  6. 点击 保存全部

未映射的语言代码将按原样发送。

AEM as a Cloud Service

要在 AEM Cloud Services 中添加语言映射,请按照以下步骤操作:

  1. /conf/aem-memsource-plugin/language-mapping/ 文件夹中创建一个 .content.xml 文件。

  2. 打开创建的文件并将以下内容复制到其中:

    <?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. /conf/aem-memsource-plugin/language-mapping/zh-cn 文件夹中创建一个 .content.xml 文件。

  4. 打开创建的文件并将以下内容复制到其中:

    <?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. 将先前步骤中创建的路径添加到位于 ui.content/src/main/content/META-INF/vault/filter.xmlfilter.xml 文件中:

    <?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>

项目 ID

一旦提交了翻译工作,项目 ID 和 UID 将作为 PROPERTY_MEMSOURCE_PROJECT_IDPROPERTY_MEMSOURCE_PROJECT_UID 属性存储在 /content/projects/project-name/jcr:content/dashboard/gadgets/translationjob 中。

使用这些 ID 在 AEM 环境中显示,或在 API 中使用以扩展插件功能。

这篇文章有帮助吗?

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.