生活分享

多語系網站的 hreflang:語言對照、canonical 與錯誤檢查

多語系網站不是把語言代碼加進網址就完成。本文整理 hreflang 的頁面對照、語言與地區代碼、雙向連結及 x-default 備用版本,並說明它與 HTML lang、canonical 的分工。透過台灣課程網站的原創例子,建立翻譯完成度清單與逐頁驗證步驟,避免缺頁、錯誤回首頁和互相矛盾的搜尋標記,讓不同語言讀者找到相應內容。

更新日期: 閱讀時間約 7 分鐘

原創文件、資料夾與螢幕圖像,表示不同語言內容、逐頁對照及切換檢查。
圖片:Mokaair (© Mokaair)

讀者在中文課程頁切換英文,卻回到英文首頁,通常不是他想要的結果。網站雖然有兩種語言,仍可能缺少逐頁的對應關係。hreflang 是把這些本地化版本告訴 Google 的方式之一,前提是網站確實有可使用的對應內容。

開始前先選一組重要頁面,例如同一堂課的中文、英文介紹和報名說明。不要從全站批次加開始,而是先確認內容、網址和切換行為,再把驗證過的規則延伸到其他文章。

三種標記各有工作,不能互相代替

hreflang 用來表達同一內容的語言或地區替代版本,協助 Google 為搜尋者找到適合的頁面。它不會自動翻譯正文,也不等於瀏覽器的語言切換按鈕。Google 主要根據可見內容判斷頁面語言,不能只改代碼就把中文文章變成英文版本。

HTML 的 lang 則是宣告文件文字所使用的語言。W3C 建議在 html 元素設定頁面的預設語言,必要時對不同語言的段落另行標記。它和 hreflang 的目的不同,因此網站已有 html lang,仍需要處理各頁面間的語言對照。

canonical 回答的是重複或相似內容中偏好的代表網址。主要內容已完整翻譯的語言頁,通常不應全部指向原始中文頁來合併;若是同語言、不同地區但高度相似的內容,則要依實際關係安排標準化與語言對照,而不是套一條全站規則。

用內容對照表確認每個版本真的存在

建立一列一個主題的表格,欄位包含內容識別、繁中網址、英文網址、其他語言、翻譯狀態與負責人。以「週末木工入門」為例,各版本都應介紹同一堂課,即使日期寫法、交通說明或在地用語有調整,主要目的仍要對得上。

某篇文章尚未翻譯時,先把缺口記在表上,不要虛構一個網址,或把所有缺漏版本都標成英文首頁。首頁與單篇文章不是同一份內容。若提供一般語言首頁作為導覽入口,應讓讀者知道那是回到首頁,而不是假裝已切換到文章譯文。

發布標記前也要逐一打開對應頁,確認正文完整、沒有測試用文字、沒有意外登入限制或失效回應。翻譯完成不是只換選單與頁尾;課程條件、注意事項和行動按鈕都應符合該語言讀者的實際需求。這份品質檢查需要內容人員參與。

語言、文字與地區代碼,按需求選擇

常見的 en 表示英文,ja 表示日文;需要地區差異時才加入適合的地區代碼,例如 en-GB 表示英國英文。對台灣使用者設計的中文版本可使用 zh-TW;若目的只是區分繁體文字,zh-Hant 表達的是文字版本,不應把它誤解成只限台灣。

不要使用 TW 單獨代表中文,也不要自行創造 zh-TW-Taiwan 之類組合。Google 的 hreflang 支援範圍有自己的規定,並不等於所有 BCP 47 語言標籤都可直接使用。先依官方清單確認,再記錄每個代碼代表的內容範圍。

x-default 可提供未符合已列語言或地區時的備用網址,常見用途是語言選擇入口;它不是「主要語言」的替代代碼,也不是每個網站都必須建立一個空白頁。是否需要備用頁,應由讀者沒有匹配版本時實際能做什麼來決定。

選一種可靠輸出方式,維持雙向與自我對照

Google 支援用 HTML、HTTP 標頭或 Sitemap 指定語言版本,三種方式對等,不需要為了加強效果全部重複設定。一般網站可先確認多語系平台或外掛能提供哪一種,再選維護最清楚的方式。非 HTML 文件則可能需要伺服器配合。

以 HTML 為例,應在 head 中提供 rel 為 alternate、hreflang 為語言代碼、href 為完整網址的 link 元素。每個版本要列自己及同組其他版本,中文指向英文時,英文也要回指中文。只有單向宣告,相關標記可能被忽略。

假設同一課程有 zh-TW、en 和 ja 三個版本,三頁都應輸出這一組一致的對照,而不是每頁只放一個「下一種語言」。網址可以跨網域,但必須實際對應。不要把 canonical、hreflang 和其他用途硬塞成同一個 link,讓一個標記同時表達不同事情。

  1. 選一組完整翻譯的頁面,固定各版本的最終公開網址。
  2. 依平台支援方式輸出語言對照,確認包括頁面本身。
  3. 逐頁反向核對,確保每個配對都能找到回指。
  4. 把同樣規則套到下一組內容,再檢查缺頁與例外。

從頁面回應與實際切換一起驗證

先檢查對照網址能否正常開啟,是否直接到預期語言與主題,再看 HTML、回應標頭或 Sitemap 中的實際輸出。不要只看後台語言欄位已選取。若使用外掛自動產生,仍應抽查首頁、文章、分類和自訂內容,因為不同頁型可能走不同規則。

同時核對 canonical 的目的地。若英文頁在 hreflang 組中出現,卻又被標成中文頁的複本,就需要重新確認內容與設定是否矛盾。已搬移的語言頁也要更新為目前的網址,避免對照長期指向轉址鏈、404 或測試站。

再從讀者角度點選語言切換:是否留在相應內容、是否能返回原語言、是否被自動導向打斷。Google 建議避免依推測語言強制轉走,並提供可點選的其他版本。搜尋工具可協助查看索引狀態,但單次測試通過不等於所有地區都已顯示預期結果。

翻譯新增與下架,要同步維護整組關係

新增日文版本時,不只新頁要有標記,既有中文與英文頁的對照也要更新。建立發布清單,將正文審閱、語言切換、標準網址和 hreflang 放在同一次驗收裡,才不會出現內容上線了、其他版本仍不知道它存在的情況。

若某語言內容下架,回到同組頁面移除失效關係,並依實際內容安排舊網址處理。翻譯延遲則保留待辦與負責人,不用空白頁填滿表格。對服務條件常變的網站,也要追蹤哪一版還停在舊資訊,避免不同語言讀者收到矛盾說明。

定期抽查一組多語內容,記錄各頁網址、回應、語言代碼、回指與 canonical。發現問題時先修正具體關係,再追蹤重新處理的結果。多語系做得完整,應讓每個版本都能獨立幫助讀者,也能清楚連回同一件事的其他語言版本。

四個區塊依序說明確認譯文、選擇代碼、檢查互相指向及發布後同步,呈現多語內容的一組式維護流程。
完整翻譯、正確對照與可用的語言切換,需要一起驗收。 · 圖片:Mokaair (© Mokaair)
不同設定需配合,但每一項都應有自己的驗證依據。
項目主要用途常見誤用
HTML lang宣告文件文字語言以為它自動建立語言對照
hreflang描述語言或地區替代頁缺少回指、指向無關首頁
canonical表達偏好的代表版本把完整譯文全部合併回中文
x-default提供不匹配時的備用頁當成語言代碼或虛構空白頁
語言切換連結讓讀者選擇其他版本切換後失去目前內容位置

  • 生活分享

    Yahoo 搜尋能見度怎麼檢查:來源、收錄與流量判讀

    網站在 Google 找得到,卻不一定能用相同查詢在 Yahoo 看見。本文說明 Yahoo 一般搜尋與 Bing 的關係,整理網站驗證、網址檢查、Sitemap 與 IndexNow 的操作順序,再用網站分析資料辨識 Yahoo 相關來源。附比較表與原創圖解,協助台灣網站維護者分清提交、收錄、搜尋呈現和實際流量,避免把付費曝光或單次查詢當成自然排名成果。

  • 生活分享

    404 頁面怎麼設計:說明狀況並幫讀者繼續走

    404 頁面不只是放一張插圖和回首頁按鈕,而是協助讀者理解找不到的內容,並繼續完成原本任務。本文以原創展覽資訊網站為例,說明清楚文案、相關分類與搜尋、HTTP 狀態碼、適當重新導向及錯誤追蹤。附操作步驟、比較表與原創圖解,協助區分真正不存在、內容搬家和服務故障,避免漂亮畫面背後仍回傳成功狀態,或將所有舊網址導向無關首頁。

  • 生活分享

    Ubersuggest 查關鍵字:把建議詞整理成內容計畫

    Ubersuggest 的建議詞可以協助發現讀者問題,但搜尋量、難度和競爭頁面的估計流量不能直接決定文章價值。本文以小空間收納內容為例,說明如何設定市場、使用不同關鍵字分頁、建立清單,再把詞整理成文章任務。附操作步驟、比較表與原創圖解,並說明全球資料缺少難度、小網站沒有資料及 GA 串接的判讀限制。

  • 生活分享

    技術 SEO 檢查順序:抓取、索引、呈現與網站結構

    技術 SEO 稽核最需要的是能重現問題的證據與合理修復順序。本文以網站改版後的檢查情境,整理網址範本抽樣、公開存取、索引指令、JavaScript 呈現、標準網址與網站結構的核對方法,並區分立即修復、排程改善與後續觀察,讓一般站長能把檢查結果交給維護者處理,並知道哪些通過測試的項目仍不等於搜尋排名保證。

最新旅遊情報攻略

資料來源

生活分享