多語系網站 SEO 一次搞懂!從 hreflang 到 canonical 的完整設定心法

在網站國際化的過程中,「多語系」是許多企業邁向全球市場的第一步。
但不少品牌網站明明有繁體中文、英文甚至日文版本,
卻出現以下讓人頭痛的情況:

🍊 常見問題現象

  • 中文站收錄正常,但英文站完全進不了 Google 索引。
  • 搜尋結果出現重複標題,排名互相稀釋。
  • 使用者在美國搜尋品牌名稱,卻看到中文內容頁。

這些問題的核心,不在翻譯品質,而在技術設定。
若沒有正確設定 hreflang 與 canonical,Google 根本無法理解你的語言架構。

為什麼多語系網站一定要設定 hreflang 與 canonical?

搜尋引擎在抓取內容時,無法像人類一樣「看得懂語言」,
它只能透過標記與結構去推測「這個頁面屬於哪個地區與語言」。
而這兩個標籤的角色分工非常明確:

🌿 hreflang 與 canonical 的差別

  • hreflang 告訴 Google:
    「這個頁面有對應的語言版本在這裡,請導向適合的使用者。」
  • canonical 告訴 Google:
    「在這些相似的內容中,這一頁才是主要版本。」

若缺少這兩者,就容易發生權重分散、重複內容或收錄錯誤。
特別是多語系網站中常見的情況:英文、簡中、繁中版本文字相似、結構一致。
沒有明確標記,Google 可能會誤判為同一內容而只收錄一頁。

網址架構選擇:子網域好還是資料夾好?

在實作多語系網站前,第一步不是翻譯內容,而是決定「網址架構」。
這將直接影響 SEO 權重與維護成本。

🌐 子網域(Subdomain)

範例:

  • zh.example.com
  • en.example.com
  • jp.example.com

優點:

  • 清楚區分語系與市場,獨立性高,可由不同團隊維運。
  • 各國行銷活動可自訂追蹤代碼與報表。

缺點:

  • Google 會視為不同網站,SEO 權重不共享。
  • hreflang 與 canonical 必須跨網域設定,維護難度提升。

👉 適合跨國企業或地區獨立品牌。

📁 資料夾(Subdirectory)

範例:

  • example.com/tw/
  • example.com/en/
  • example.com/jp/

優點:

  • 同網域下的語言版本可共享整體權重,對 SEO 最友善。
  • 維護集中、GA4 與 GSC 資料一致性高。
  • hreflang、canonical 結構簡單,不易出錯。

缺點:

  • 權限控管需明確,避免開發與行銷團隊誤改主結構。

👉 適合集中管理的企業網站、品牌形象官網。

小結: 若沒有跨國維運需求,建議採用 「資料夾」架構, 可快速累積權重與提升 SEO 成效。

專家觀點與實證資料

根據 SEMrush 的報告:

「許多 SEO 專家認為,使用子資料夾比子網域更為 SEO 友善。因為子資料夾屬於主網域的一部分,所有指向主網域的 backlinks(外部連結)可更直接累積並惠及整個域名。」
— SEMrush

此報告明確指出:子網域可能被搜尋引擎視為「獨立網站」,因此其累積的權重不一定會自動傳回主網域。
這一觀點也獲得 HawkSEMCloudflare 的技術團隊支持。

Cloudflare 官方部落格(The Cloudflare Blog) 中同樣提到:

「對於初創企業或希望集中提升主域名權重的網站而言,建議使用子資料夾。因為子資料夾有助於集中關鍵字、集中域名權重。」
— Cloudflare Blog

這些權威資料共同指出,「集中式資料夾架構有助於累積主域名的整體權重」,
是目前多數 SEO 專業顧問的首選策略。

hreflang 的正確設定方法

hreflang 告訴搜尋引擎「同一內容在不同語言或地區的對應版本」。
它的語法如下:

<link rel="alternate" hreflang="zh-Hant" href="https://example.com/tw/about">
<link rel="alternate" hreflang="en" href="https://example.com/en/about">
<link rel="alternate" hreflang="x-default" href="https://example.com/">

設定重點

🌿 hreflang 標註原則重點

  • 成對存在:
    每個語系版本都必須互相宣告彼此存在。
    例如:EN 頁要指向 ZH,ZH 也要指向 EN。
  • x-default 是預設版本:
    若使用者語言無對應頁面,Google 會導向這個版本。
  • 語言代碼與地區代碼格式:
    zh-Hant(繁體中文)
    zh-Hans(簡體中文)
    en-us(美國英文)
    en-gb(英式英文)

常見錯誤

  • hreflang 指向不存在的頁面或 404:
    這會讓搜尋引擎無法確認語系對應關係,導致該版本無法被索引。
  • hreflang 與 canonical 指向不同頁:
    容易讓 Google 混淆主要頁與對應語系頁,造成索引權重分散。
  • hreflang 語法中語言代碼錯誤:
    例如使用 zh-TW 而實際應為 zh-Hant,會導致語言辨識失效。

這些錯誤會導致 Google 完全忽略 hreflang 標籤。

canonical 的角色:避免重複收錄與權重稀釋

canonical 是讓 Google 知道「哪一頁是主要版本」的標籤。
常用語法如下:

<link rel="canonical" href="https://example.com/en/about">

🌿 Canonical 標籤設定原則

適用場景:

  • 有相同內容的不同參數頁(如 ?utm_source)。
  • 不同語系內容相似但屬於不同地區。

重點原則:

  • 每個語系版本都應有自己的 canonical,指向自己。
  • 不要所有語言頁都 canonical 到同一頁(這是常見錯誤!)。

hreflang 與 canonical 如何搭配?

最安全的設定邏輯是:

頁面版本canonical 指向hreflang 指向
/tw/about(/tw/about)en/about、jp/about、x-default
/en/about(/en/about)tw/about、jp/about、x-default
/jp/about(/jp/about)tw/about、en/about、x-default

這樣 Google 就能:

  • 確認每個語系為獨立內容;
  • 理解它們之間的對應關係;
  • 在對應地區顯示正確語言頁面。

Apple 官網實際 hreflang 結構(真實範例)

https://www.apple.com/tw/ 的原始碼中,你會看到以下設定(節錄重點段落):

<link rel="alternate" hreflang="en-us" href="https://www.apple.com/" />
<link rel="alternate" hreflang="zh-tw" href="https://www.apple.com/tw/" />
<link rel="alternate" hreflang="zh-cn" href="https://www.apple.com/cn/" />
<link rel="alternate" hreflang="ja-jp" href="https://www.apple.com/jp/" />
<link rel="alternate" hreflang="ko-kr" href="https://www.apple.com/kr/" />
<link rel="alternate" hreflang="fr-fr" href="https://www.apple.com/fr/" />
<link rel="alternate" hreflang="de-de" href="https://www.apple.com/de/" />
<link rel="alternate" hreflang="es-es" href="https://www.apple.com/es/" />
<link rel="alternate" hreflang="it-it" href="https://www.apple.com/it/" />

SEO 架構分析

這段設定非常標準,完全符合 Google 的 多語言網站最佳實踐(Google Search Central) 指南,重點如下:

  • 1️⃣ 每個國家語言都有獨立路徑(Subdirectory)
    Apple 採用 /tw//jp//fr/ 等資料夾架構,而非子網域。
    👉 這樣的方式讓所有地區網站共享主網域權重,提升整體 SEO 穩定性。
  • 2️⃣ hreflang 與 canonical 一致
    每個地區頁的 canonical 都指向自身(例如 /tw/ 指向 /tw/),
    避免重複內容被誤判、權重分散。
  • 3️⃣ 統一語法風格與順序
    Apple 對所有語系頁均維持相同 hreflang 清單順序,
    這有助於爬蟲快速比對版本,降低索引錯誤率。

我們學到什麼?

原則Apple 的作法建議企業參考做法
網址結構使用資料夾(example.com/tw/)適合權重集中型網站
hreflang全面標註所有地區語系不要只標幾個主要語言
x-default指向地區選擇頁提升國際化體驗
canonical自指型設定避免跨語系混淆
頁面一致性每頁 head 區塊內容相同有助維護與自動化產出

實務重點

Apple 官網的設定示範了幾個關鍵概念:

🌿 多語系結構的三大優勢

  • 搜尋引擎友善度高:
    每個語系版本獨立但權重集中,Google 可快速辨識語言。
  • 維運效率高:
    所有 hreflang 統一於模板層輸出,不需人工維護。
  • 國際化體驗一致:
    不論使用者從哪個地區進入,皆能正確導向最合適的語言版本。


結論:
Apple 採用的 hreflang 架構可說是「企業級多語系網站的最佳實踐」。
它不僅清楚告訴 Google 語言對應關係,也透過資料夾架構(subdirectory)集中權重,達到最高的 SEO 穩定度。

實務案例與框架設定重點

Laravel

可於 Blade 模板 head 區塊中動態生成:

@foreach($locales as $locale => $url)
    <link rel="alternate" hreflang="{{ $locale }}" href="{{ $url }}">
@endforeach
<link rel="canonical" href="{{ url()->current() }}">

WordPress

可使用外掛(如 Polylang、WPML)自動管理 hreflang 與 canonical,
但請務必手動檢查輸出結果,確保語系配對正確。

Next.js

使用 next/head 模組於 _app.js 中設定,並動態生成語系連結。

讓 Google 真正看懂你的網站

多語系網站的 SEO 成功,關鍵不在語言數量,而在「結構清晰」。
只要掌握三個原則:

  1. 網址架構明確(建議使用資料夾)
  2. 每個語系頁皆有正確 hreflang + canonical
  3. 每個版本彼此互相指向,避免孤立頁面

當 Google 能夠理解你網站的語言結構,
你的英文站不只會被收錄,更會在正確地區自然浮上搜尋首頁。

💬 一起讓網站更國際化

你的多語系網站是否也遇過「英文頁沒收錄」、「語系亂跳」、「Google 抓錯版本」的問題?

歡迎留言告訴我你的經驗,或將這篇文章分享給正在打造國際版網站的朋友。

若想更深入了解 hreflang、canonical 或國際 SEO 架構 的設定,
我也能協助你進行網站結構診斷與實作建議。

我要聯絡諮詢

返回頂端