在AEM Edge Delivery站点中配置lang属性
使用AEM通用编辑器和Edge Delivery Services构建多语言站点时,在静态HTML中配置lang属性。 此方法可确保在客户端HTML运行之前,JavaScript元素包含用于SEO和可访问性的正确语言设置。 要解决此问题,请在元数据中配置html-lang,以便Edge Delivery Services在静态HTML中呈现正确的lang属性。
描述 description
环境
- Adobe Experience Manager as a Cloud Service (AEMaaCS) — 站点
- Edge Delivery Services
- 通用编辑器
问题/症状
- 静态HTML输出在HTML元素上不包含
lang attribute。 - 难以满足多国家/地区或多语言站点的SEO和无障碍要求。
解决方法 resolution
要解决此问题,请执行以下步骤:
- 在Edge Delivery存储库中找到元数据定义文件。 这可以是诸如
metadata.xlsx或CSV文件的电子表格,也可以是您.aem.page或.aem.live主机上公开为/metadata.json的JSON工作表。 - 向元数据文件添加特定于区域设置的映射,并在URL列中使用全局模式来匹配特定于区域设置的路径,例如,意大利语页面的
/it-it/<b>。 - 对于每个映射,请在与您的URL结构匹配的
html-lang属性中指定相应的语言区域代码,例如/it-it/的it-IT。 - 提交更改并将其推送到Edge Delivery Services站点使用的分支。
- 从AEM或通用编辑器中,在每个区域设置中至少重新发布一个示例页面,以便考虑更新的元数据。
- 为示例区域设置页面打开相应的Edge Delivery Services URL (
.aem.page或.aem.live)。 - 使用查看页面Source确认HTML元素包含正确的
lang attribute。 . 如果Edge Delivery Services上显示了正确结果,但生产域上未显示正确结果,请清除CDN缓存或验证域映射是否指向更新的分支或主机。
### 注释
- - 对于大多数多国家/地区或多语言站点,为简单且稳健,建议通过批量元数据管理
html-lang。 通过将HTML-lang字段添加到通用编辑器中的单个页面元数据,可以实现每页更细粒度的控制。 但是,此值仍必须在元数据中显示为html-lang,以便Edge Delivery Services正确呈现它。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f