seo-hreflang

seo-hreflang

熱門

Hreflang 與國際 SEO 稽核、驗證與產生。偵測常見錯誤、驗證語言/地區代碼,並產生正確的 hreflang 實作。當使用者提到「hreflang」、「i18n SEO」、「國際 SEO」、「多語言」、「多地區」或「語言標籤」時使用。

1.2萬星標
1752分支
更新於 2026/7/20
SKILL.md
唯讀
名稱
seo-hreflang
描述

Hreflang 與國際 SEO 稽核、驗證與產生。偵測常見錯誤、驗證語言/地區代碼,並產生正確的 hreflang 實作。當使用者提到「hreflang」、「i18n SEO」、「國際 SEO」、「多語言」、「多地區」或「語言標籤」時使用。

Hreflang 與國際 SEO

驗證現有的 hreflang 實作,或為多語言與多地區網站產生正確的 hreflang 標籤。支援 HTML、HTTP 標頭與 XML Sitemap 實作方式。

驗證檢查

1. 自我參照標籤

  • 每個頁面必須包含指向自身的 hreflang 標籤
  • 自我參照的 URL 必須與頁面的 canonical URL 完全一致
  • 缺少自我參照標籤會導致 Google 忽略整個 hreflang 集合

2. 回返標籤

  • 如果頁面 A 透過 hreflang 連結到頁面 B,頁面 B 必須回連到頁面 A
  • 每個 hreflang 關係必須是雙向的(A→B 與 B→A)
  • 缺少回返標籤會使兩個頁面的 hreflang 訊號失效
  • 檢查所有語言版本是否互相參照(完整網狀結構)

3. x-default 標籤

  • 當存在選擇器/備用 URL 時建議使用:指定未匹配語言/地區時的備用頁面
  • 通常指向語言選擇器頁面或英文版
  • 每組替代頁面只能有一個 x-default
  • 所有其他語言版本也必須有回返標籤

4. 語言代碼驗證

  • 必須使用 ISO 639-1 的兩個字母代碼(例如 enfrdeja
  • 可選的 ISO 15924 文字子標籤是官方文件規定的文字標示機制:zh-Hant(繁體)/ zh-Hans(簡體)。文字可與地區結合,例如 zh-Hans-US 是有效的(語言 + 文字 + 地區)。
  • 常見錯誤:
    • eng 而非 en(ISO 639-2,不適用於 hreflang)
    • jp 而非 ja(日語的錯誤代碼)
    • zh 有效但對特定文字頁面不明確;針對文字時建議使用 zh-Hanszh-Hant

5. 地區代碼驗證

  • 可選的地區限定詞使用 ISO 3166-1 Alpha-2(例如 en-USen-GBpt-BR
  • 格式:language-REGION(語言小寫,地區大寫)
  • 單獨的國家代碼無效,你不能在沒有語言的情況下指定地區(Google 自己的錯誤範例是 be,實際上是白俄羅斯語的語言代碼,而非比利時)。
  • 常見錯誤:
    • en-uk 而非 en-GB(UK 不是有效的 ISO 3166-1 地區代碼)
    • EU / UN 作為地區(不是有效的 ISO 3166-1 值)
    • es-LA(拉丁美洲不是國家;請使用特定國家)
    • 地區沒有語言前綴

5b. 地理定位訊號層級

  • 實用的地區訊號啟發式:ccTLD > hreflang 註解 > 伺服器位置/IP > 地址/語言/貨幣/商家檔案。請勿將其呈現為已確認的 Google 排名順序。hreflang 是提示,而非指令。Google 忽略位置 meta 標籤與 HTML 地理定位屬性。
  • Search Console 的國際目標設定報告與手動國家目標設定功能已於 2022 年移除請勿建議在 GSC 中設定國家目標;hreflang 是剩餘的槓桿。

6. Canonical URL 對齊

  • Hreflang 標籤只能出現在 canonical URL 上
  • 如果頁面有指向其他位置的 rel=canonical,該頁面上的 hreflang 將被忽略
  • Canonical URL 與 hreflang URL 必須完全一致(包含結尾斜線)
  • 非 canonical 頁面不應出現在任何 hreflang 集合中

7. 協定一致性

  • 同一 hreflang 集合中的所有 URL 必須使用相同的協定(HTTPS 或 HTTP)
  • 混合 HTTP/HTTPS 會導致驗證失敗
  • 遷移至 HTTPS 後,請更新所有 hreflang 標籤為 HTTPS

8. 跨網域支援

  • Hreflang 可跨不同網域運作(例如 example.comexample.de
  • 跨網域 hreflang 需要在兩個網域上都有回返標籤
  • 使用 Google Search Console 驗證進行監控,或視需要提交跨站 Sitemap
  • 建議跨網域設定使用 Sitemap 實作

常見錯誤

問題 嚴重性 修正
缺少自我參照標籤 嚴重 新增指向同一頁面 URL 的 hreflang
缺少回返標籤(A→B 但無 B→A) 嚴重 在所有替代頁面上新增對應的回返標籤
需要備用行為時缺少 x-default 中等 新增指向備用/選擇器頁面的 x-default
無效的語言代碼(例如 eng 使用 ISO 639-1 兩個字母代碼
無效的地區代碼(例如 en-uk 使用 ISO 3166-1 Alpha-2 代碼
在非 canonical URL 上的 hreflang 僅將 hreflang 移至 canonical URL
URL 中 HTTP/HTTPS 不一致 中等 將所有 URL 標準化為 HTTPS
結尾斜線不一致 中等 完全比照 canonical URL 格式
同時存在 HTML 與 Sitemap 中的 hreflang 選擇一種方法(大型網站建議使用 Sitemap)
需要時語言未附帶地區 為地理定位內容新增地區限定詞

實作方法

方法 1:HTML Link 標籤

最適合:每個頁面少於 50 種語言/地區變體的網站。

<link rel="alternate" hreflang="en-US" href="https://example.com/page" />
<link rel="alternate" hreflang="en-GB" href="https://example.co.uk/page" />
<link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />

放置在 <head> 區段中。每個頁面必須包含所有替代頁面,包括自身。

方法 2:HTTP 標頭

最適合:非 HTML 檔案(PDF、文件)。

Link: <https://example.com/page>; rel="alternate"; hreflang="en-US",
      <https://example.com/fr/page>; rel="alternate"; hreflang="fr",
      <https://example.com/page>; rel="alternate"; hreflang="x-default"

透過伺服器設定或 CDN 規則設定。

方法 3:XML Sitemap(大型網站建議使用)

最適合:具有許多語言變體、跨網域設定或超過 50 個頁面的網站。

請參閱下方的 Hreflang Sitemap 產生章節。

方法比較

方法 最適合 優點 缺點
HTML link 標籤 小型網站(<50 種變體) 易於實作,可在原始碼中看到 使 <head> 龐大,難以大規模維護
HTTP 標頭 非 HTML 檔案 適用於 PDF、圖片 複雜的伺服器設定,在 HTML 中不可見
XML Sitemap 大型網站、跨網域 可擴展、集中管理 在頁面上不可見,需要維護 Sitemap

Hreflang 產生

流程

  1. 偵測語言:掃描網站的語言指示器(URL 路徑、子網域、頂級網域、HTML lang 屬性)
  2. 對應頁面等效項:匹配跨語言/地區的對應頁面
  3. 驗證語言代碼:根據 ISO 639-1 與 ISO 3166-1 驗證所有代碼
  4. 產生標籤:為每個頁面建立 hreflang 標籤,包含自我參照
  5. 驗證回返標籤:確認所有關係都是雙向的
  6. 新增 x-default:為每個頁面集合設定備用頁面
  7. 輸出:產生實作代碼(HTML、HTTP 標頭或 Sitemap XML)

Hreflang Sitemap 產生

含 Hreflang 的 Sitemap

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://example.com/page</loc>
    <xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/page" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
    <xhtml:link rel="alternate" hreflang="de" href="https://example.de/page" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/page" />
  </url>
  <url>
    <loc>https://example.com/fr/page</loc>
    <xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/page" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
    <xhtml:link rel="alternate" hreflang="de" href="https://example.de/page" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/page" />
  </url>
</urlset>

關鍵規則:

  • 包含 xmlns:xhtml 命名空間宣告
  • 每個 <url> 項目必須包含所有語言替代頁面(包括自身)
  • 每個替代頁面必須作為獨立的 <url> 項目出現,並附帶自己的完整集合
  • 以先達到者為準進行分割:每個 Sitemap 檔案 50,000 個 URL 或 50MB 未壓縮

輸出

Hreflang 驗證報告

摘要
  • 掃描的頁面總數:XX
  • 偵測到的語言變體:XX
  • 發現的問題:XX(嚴重:X,高:X,中等:X,低:X)
驗證結果
語言 URL 自我參照 回返標籤 x-default 狀態
en-US https://...
fr https://... ⚠️
de https://...

產生的 Hreflang 標籤

  • HTML <link> 標籤(如果選擇 HTML 方法)
  • HTTP 標頭值(如果選擇標頭方法)
  • hreflang-sitemap.xml(如果選擇 Sitemap 方法)

建議

  • 需要新增的遺漏實作
  • 需要修正的錯誤代碼
  • 方法遷移建議(例如,為擴展性從 HTML 遷移至 Sitemap)

文化適應評估

在分析多語言網站時,除了技術性的 hreflang 驗證之外,還要評估內容是否針對每個目標市場進行了文化適應。

載入 references/cultural-profiles.md 以取得預先建立的設定檔(DACH、法語區、西班牙語區、日語)。

評估步驟:

  1. 識別所有語言版本及其目標市場
  2. 載入相關的文化設定檔
  3. 檢查 CTA 是否符合文化期望(直接 vs 間接)
  4. 檢查信任訊號是否適合地區(認證、法律頁面)
  5. 檢查在地化頁面上是否有外國品牌參照
  6. 檢查數字/日期/貨幣格式的一致性
  7. 將文化適應問題標記為中等嚴重性

輸出: 每個語言版本的文化適應分數(0-100),附帶具體發現。

內容一致性稽核

指令: /seo hreflang audit <directory-or-url>

稽核網站或本地內容目錄中所有語言版本的內容一致性。

載入 references/content-parity.md 以取得完整的一致性矩陣與評分方法。

檢查項目:

  • 所有宣告語言中的頁面存在性
  • 章節結構等效性(H2/H3 數量)
  • SEO 元素一致性(標題、meta、結構化資料在地化)
  • 字數比例驗證(德文應比英文長 25-35%,日文應短 10-25%)
  • 新鮮度追蹤(透過時間戳記偵測過時的翻譯)
  • 文化標記掃描(外國品牌、錯誤的法律參照、未翻譯的元素)

輸出: 一致性矩陣表格,包含每個頁面的分數與優先處理的動作項目。

地區格式驗證

載入 references/locale-formats.md 以取得每個地區的數字、日期、貨幣、地址與電話格式參考表格。

檢查項目:

  • 數字格式一致性(例如,在 de-DE 頁面上「1,000.00」應為「1.000,00」)
  • 日期格式符合地區期望
  • 貨幣符號與位置正確對應目標市場
  • 電話號碼使用國際格式並附帶正確的國碼

參考檔案

按需載入(請勿在啟動時全部載入):

  • references/cultural-profiles.md:DACH、法語區、西班牙語區、日語的文化適應設定檔
  • references/locale-formats.md:每個地區的數字、日期、貨幣、地址、電話格式表格
  • references/content-parity.md:內容一致性稽核方法與評分

錯誤處理

情境 動作
URL 無法連線(DNS 失敗、連線被拒) 清楚回報錯誤。不要猜測網站結構。建議使用者驗證 URL 後重試。
找不到 hreflang 標籤 回報缺少。檢查其他國際化訊號(子目錄、子網域、ccTLD)並建議適當的 hreflang 實作方法。
偵測到無效的語言/地區代碼 列出每個無效代碼並提供正確的替代。提供一組已修正的 hreflang 標籤,可直接實作。
該語言沒有可用的文化設定檔 使用 cultural-profiles.md 中的預設設定檔檢查清單。請注意,評估是基於一般指南,而非預先建立的設定檔。
內容一致性目錄為空 回報未找到任何內容檔案。建議驗證目錄路徑或提供 URL 以進行即時網站分析。