在多語種網站中,讓搜尋引擎能正確辨識每一個語言版本的內容,對於提升國際化曝光率與使用者體驗至關重要。翻譯感知的 Schema 設定,就是透過結構化資料告訴機器這篇文章在不同語系下的對應關係。
以下將以實例說明如何在 JSON‑LD 中加入語言屬性、設定原文與翻譯之間的連結,以及最佳化標記,讓搜尋結果能顯示最適合的語言版本。
語言屬性的基本用法
在 JSON‑LD 裡,你可以把 headline、description 等欄位包裝成物件,並使用 @value 與 @language 指定對應語系:
{ "headline": {"@value":"歡迎來到我的部落格","@language":"zh-TW" } }
這樣搜尋引擎就知道此標題是繁體中文;若同一頁還有英文版本,可以再加入另一個物件:
{ "headline": {"@value":"Welcome to my blog","@language":"en-US" } }
原文與翻譯的連結
Schema.org 允許透過 translationOfWork 與 inLanguage 建立原作與翻譯之間的關聯。以下示範兩篇文章互相對應:
{
"@context": "https://schema.org",
"@type": "Article",
"url": "https://example.com/zh-tw/article-1",
"inLanguage": "zh-TW",
"translationOfWork": {"@id": "https://example.com/en-us/article-1"}
}
{
"@context": "https://schema.org",
"@type": "Article",
"url": "https://example.com/en-us/article-1",
"inLanguage": "en-US",
"translationOfWork": {"@id": "https://example.com/zh-tw/article-1"}
}
使用 alternateName 與 name 的語言標記
對於商品、影片等非文章型別,也可以用 alternateName 來說明不同語系名稱,例如:
{
"@context": "https://schema.org",
"@type": "Movie",
"name": {"@value":"星際效應","@language":"zh-TW"},
"alternateName": {"@value":"Interstellar","@language":"en-US"}
}
產生多語種頁面的最佳化技巧
- 保持 URL 的語言標記:例如
/zh-tw/… 與 /en-us/…,並在 <link rel="alternate" hreflang="..."> 標籤中對應。雖然這是 HTML 層面的做法,但結構化資料也能配合使用。
- 避免重複內容警告:若同一篇文章的多語版本共用相同的
@id,請務必在每個 JSON‑LD 中指定不同的 URL 及 inLanguage。
- 自動化生成腳本:利用 CMS 的 API 或插件,把語言資訊注入到 JSON‑LD 模板中,確保每次翻譯後都能同步更新。
常見問題與解決方法
- 「搜尋結果只顯示繁體中文」:檢查是否所有語言版本都有完整的
inLanguage 與 translationOfWork。若缺失,搜尋引擎可能無法辨識對應關係。
- 「翻譯版被視為重複內容」:使用
@id 只保留原文 URL,並在翻譯版 JSON‑LD 使用 inLanguage,這樣 Google 會認定它是同一篇文章的不同語言版本。
小結
透過正確設置語言屬性與互相關聯的結構化資料,不僅能讓搜尋引擎更精準地呈現多國使用者需要的內容,也提升整體站群在全球搜尋排名中的競爭力。接下來,你可以將上述範例套用到自己的 CMS 或靜態頁面產生器中,開始打造真正翻譯感知的網站吧!