Hreflang 标签:让正确的语言版本展示给正确的用户

Hreflang 标签告诉搜索引擎该展示哪个语言版本的页面。了解它的工作原理、常见实现错误以及如何审计。

你的页面有英文版和西班牙文版,但 Google 把英文版展示给了西班牙用户

当网站有多种语言版本或面向多个地区时,hreflang 标签告诉 Google 该给哪些用户展示哪个版本。没有这些标签的话,Google 只能猜——而且经常猜错。

结果就是:西班牙语用户看到了英文页面,立马跳出,你辛苦争取来的流量就这么没了。

Hreflang 是怎么工作的

Hreflang 是一个 HTML 属性,用来声明页面的语言和可选的地区,并将其与其他语言版本关联起来:

<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="es" href="https://example.com/es/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />

其中 x-default 告诉 Google 当没有其他 hreflang 匹配用户语言时,应该展示哪个版本。

什么时候需要 hreflang

  • 同一内容翻译成了多种语言
  • 存在地区变体(美式英语 vs 英式英语)
  • 不同国家展示不同内容(定价、可用性等)

如果你的网站只有一种语言,不需要 hreflang。

最容易搞砸的地方

Hreflang 一直有"难以正确实现"的名声——因为大家总是犯同样的错误:

错误后果
缺少回指链接A 页面引用了 B 页面,但 B 没有引用 A。Google 会两边都忽略。
语言代码写错用了 "uk" 而不是 "en-GB",或者用了 "jp" 而不是 "ja"
缺少 x-defaultGoogle 不知道哪个版本是兜底的
Hreflang 指向非 canonical URLcanonical 和 hreflang 指向不同的页面——造成混乱
各页面实现不一致有些页面有 hreflang,有些没有

回指链接规则是最容易出问题的。 每个 hreflang 标签必须是双向的。如果英文页面说"我的西班牙语版本是 /es/page",那么 /es/page 也必须说"我的英文版本是 /page"。如果任何一方缺失,Google 就会忽略整组 hreflang。

如何审计 hreflang

Hreflang 的问题几乎不可能靠手动发现,因为需要在多个页面之间交叉检查。自动化审计应该能够:

  1. 检查每个页面的 hreflang 标签
  2. 验证双向回指链接是否存在
  3. 校验语言和地区代码
  4. 确认 hreflang URL 与 canonical URL 一致
  5. 检测缺失的 x-default 标签
  6. 标记部分语言版本有 hreflang 而其他版本没有的页面

Kaitico 会检查每个爬取页面的 hreflang 实现,验证回指链接、语言代码和一致性——让你在国际 SEO 问题导致流量损失之前就能发现并修复。

想检查你的网站是否存在此问题?

Kaitico 可以一键扫描全站,找出所有 SEO 问题。

免费开始审计