hreflang 是什么——双语站真正要做对的部分

面向中英(或任意双语)站的 `hreflang` 实操指南——`<head>` 里要放什么、大多数生成器哪里出错、以及怎么验证生效。

如果你跑一个双语站,hreflang 决定了 Google 是把中文页面排到中文搜索结果里,还是把中英两版当成重复内容互相打架。它就 12 行 HTML,但大约一半的双语独立站都有微妙的错。

问题背景

hreflang 是在告诉搜索引擎「这页有 X 语言在 URL A、Y 语言在 URL B」。Google 用它做两件事:给对的用户展示对的语言版本,以及不把跨语言的同一内容当重复处罚。它不直接影响排名——但 hreflang 缺失或写错,通常会把非默认语言的流量砍掉一半。

判断标准

  • 中英两版文章在并行 URL 上(/en/articles/x//zh/articles/x/)。
  • 在 Google 中文搜索结果里看到自己的英文页面(或反过来)——用户语言不对。
  • Search Console 里某个语言版本显示「Alternate page with proper canonical tag」。
  • 中英内容完整度一样,但中文的收录数明显少于英文。

快速结论

每页 <head> 里加一组互相引用的 <link rel="alternate" hreflang="...">。每组必须包含所有语言版本 + 自指 + x-default。两边都要引用对方——单向 hreflang 会被忽略。

实操步骤

  1. 每页生成完整的 hreflang 块。中英两版的文章是三条:hreflang="en" 指向英文 URL、hreflang="zh" 指向中文 URL、hreflang="x-default" 指向你定的默认(通常是英文)。
  2. 互相引用。英文页里 hreflang="zh" 指中文 URL;中文页里 hreflang="en" 指英文 URL;两边都还要包含自指。任一边缺失,Google 会把整组都忽略。
  3. 用绝对 URL(https://yoursite.com/zh/articles/slug/),不要相对路径。协议(https://)和主机在 canonical、sitemap、hreflang 之间必须完全一致——大小写、结尾斜杠都不能差。
  4. 每个语言版本都用自指 canonical。不要把 zh 页面 canonical 到 en,或反过来。canonical 和 hreflang 配合工作:canonical 说「这是这份内容这门语言的标准 URL」,hreflang 说「这里有其他语言版本」。
  5. 部署后验证。在一篇英文页 view source 看到 3 条 hreflang;对应中文页 view source 也看到这 3 条。然后 Search Console URL Inspection 跑一下,「International Targeting」面板里 Google 应该报告 hreflang 集合无错。
  6. 如果要做国家级定位,只在你真的为不同地区出不同内容时才用 hreflang="zh-CN"hreflang="zh-TW"。如果两地内容一样,用 hreflang="zh"(只标语言)省事。

容易踩的坑

  • 单向 hreflang。英文页引用了中文,但中文页没引用回来。Google 默默把整组丢掉。
  • 忘了自指标签。每页必须包含自己 URL 对应自己 hreflang 值的那一条,否则 Google 认为这组不完整。
  • 为了「集中权重」把中文版 canonical 到英文版。结果是中文页从中文搜索消失。别这么做。
  • 内容其实是通用中英文,却用了 lang="en-US"lang="zh-CN"。国家代码意味着你承诺给特定地区出不同内容;如果 zh-CNzh-TW 完全一样,直接用 zh
  • hreflang、canonical、sitemap 三处 URL 不一致。少一个结尾斜杠都算不一致。

这篇适合谁

同一域名下跑并行中英两版(或任意双语组合)、slug 一一对应的独立内容站。

这篇不适合谁

单语站——hreflang 对你没意义。或者两个语言版本内容完全不同(文章不同、结构不同),那种情况建议拆两个独立站,各自 Search Console 属性。

FAQ

  • 一定要有 x-default 吗?: 强烈建议有。x-default 告诉 Google「用户语言都不匹配时,展示这版」。没它 Google 会猜,第三国用户那里经常猜错。
  • hreflang 能放 sitemap 里而不是 <head> 吗?: 能,二选一(不要同时用)。页面多的站推荐 sitemap 版,HTML 干净。<head> 版调试更方便。
  • Search Console 还显示「Alternate page with proper canonical tag」是怎么回事?: 正常。非默认语言版本就该是这个状态。意思是 Google 看到了这页,把它当成 canonical 页的备选语言版本。不是错误,是正确状态。
  • hreflang 能帮我在百度排名吗?: 不能。百度不用 hreflang。百度需要百度站长平台 + ICP 备案,是另一套流程。hreflang 只对 Google 和 Bing 有用。

相关阅读

标签: #独立开发 #SEO #Technical SEO #hreflang #双语