多語系 SEO 與 hreflang:同一篇文章的中英文版本怎麼共存

作者 ·發佈

一句話答案

hreflang 是告訴搜尋引擎「這頁有哪些語言版本」的標籤,讓搜尋者看到自己語言的版本。每個版本都必須列出包含自己在內的所有版本(雙向互指),語系代碼要用 ISO 格式(例如 zh-TW、en),並加上 x-default 當作預設。

什麼時候需要 hreflang?

當同一份內容有多個語言或地區版本時。例如本站每篇文章都有繁中版與英文版。沒有 hreflang 時,搜尋引擎可能會:

單一語系的網站不需要 hreflang。

網址結構該怎麼選?

結構 例子 優點 缺點
子目錄 example.com/en/ 共用網域權重、最容易維護 地區訊號較弱
子網域 en.example.com 可以分開部署 權重分散
國家網域 example.co.uk 地區訊號最強 成本高、要分別經營
網址參數 ?lang=en — Google 不建議

多數情況選子目錄最划算。本站用的就是子目錄:預設語系繁中不加前綴,英文加 /en/。

hreflang 怎麼寫?

在每個語言版本的 <head> 都放上完整的一組:

<link rel="alternate" hreflang="zh-TW" href="https://example.com/articles/geo/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/articles/geo/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/articles/geo/" />

三條規則:

  1. 包含自己:中文版也要列出指向自己的 zh-TW。
  2. 雙向互指:中文版指向英文版,英文版也必須指回中文版。只有單向的 hreflang 會被忽略。
  3. 使用絕對網址:要包含 https:// 與網域。

x-default 是什麼?

x-default 指定「沒有符合使用者語言的版本時,要顯示哪一頁」,通常指向預設語言或語言選擇頁。

除了 HTML 還能在哪裡宣告?

Google 支援三種方式,選一種即可(官方說明):

本站同時用了 HTML 標籤與 sitemap,兩者內容一致不會衝突。

最常見的錯誤

用本站的健康檢查工具檢查任何網址,會驗證 hreflang 是否包含自己與 x-default。

常見問題

用 hreflang 就不需要 canonical 了嗎?

兩者都需要。每個語言版本都應該有指向自己的 canonical,不要把英文版的 canonical 指向中文版,否則英文版會被當成副本而不被收錄。

繁體中文應該用 zh-TW 還是 zh-Hant?

兩者 Google 都接受。zh-TW 表示「台灣使用的中文」,zh-Hant 表示「繁體字」。主要讀者在台灣時用 zh-TW 最直接。

可以只靠自動翻譯產生英文版嗎?

可以但要謹慎。品質低落的自動翻譯內容可能被視為低品質頁面。至少要人工校對,並確保內容對目標讀者有用。

→ Core Web Vitals:網站速度怎麼量、怎麼改