在AEM Edge Delivery網站中設定lang屬性

使用AEM Universal Editor和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

若要解決此問題,請遵循下列步驟:

  1. 在您的Edge Delivery存放庫中找出中繼資料定義檔案。 這可以是試算表,例如metadata.xlsx或CSV檔案,或是在.aem.page.aem.live主機上公開為/metadata.json的JSON工作表。
  2. 將地區設定特定的對應新增到中繼資料檔案,並在URL欄中使用全域模式來比對地區設定特定的路徑,例如,義大利頁面的/it-it/<b>
  3. 針對每個對應,在符合您URL結構的html-lang屬性中指定適當的語言區域代碼,例如/it-it/it-IT
  4. 認可變更並推送至Edge Delivery Services網站所使用的分支。
  5. 從AEM或Universal Editor在每個地區設定中重新發佈至少一個範例頁面,以便考慮更新的中繼資料。
  6. 針對範例地區設定頁面,開啟對應的Edge Delivery Services URL (.aem.page.aem.live)。
  7. 使用檢視頁面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