搜索全站
multilingual 3 分钟阅读

多语言 hreflang 完整实现:双向标注、自引用与 x-default

hreflang 是多语言 SEO 的命脉:讲清每页必须"双向互指 + 自引用 + 设 x-default"的完整写法,以及 WPML/Polylang 自动输出的验证方法。

U
UFO_PF 2024-08-05 · 阅读 3 分钟
多语 MULTILINGUAL
阅读提示
本文约 1,010 字,预计阅读 3 分钟。文中命令与配置均经过实测,可直接参考执行。

引言:加了 hreflang 还是被当成重复

hreflang 最易错在”只单向”或”漏自引用”。Google 要求:若 A 链 B,则 B 也必须链 A(双向);每页要包含自己(自引用);并设 x-default 兜底。缺一都可能误判。

原理分析:三条铁律

  1. 双向:A 的 hreflang 含 B,B 也必须含 A。单向 Google 忽略。
  2. 自引用:每页的 hreflang 列表要含自己那行。
  3. x-default:指向默认语言/区域中立页,给未匹配用户兜底。
    语言代码用标准(zh-hans、en、de),区域可加(en-us)。

保姆级实操

完整一组(在每语言页都输出同样的块):

<link rel="alternate" hreflang="x-default" href="https://mimangfei.com/">
<link rel="alternate" hreflang="zh-hans" href="https://mimangfei.com/">
<link rel="alternate" hreflang="en" href="https://mimangfei.com/en/">
<link rel="alternate" hreflang="de" href="https://mimangfei.com/de/">

WPML/Polylang 自动生成;用”检查 hreflang”工具验证双向。

常见坑

  1. 单向标注,Google 不认。
  2. 漏 x-default,未匹配区域无兜底。
  3. 案例:某站只 A→B 没 B→A,Google 当重复内容,英文排不进。补全双向后正常。
  4. 语言代码写错(如 zh 非 zh-hans),匹配失败。
  5. canonical 与 hreflang 冲突(见下篇)。

总结

判断标准:每页双向+自引用+x-default,语言代码标准。行动清单:输出完整块 → 验双向 → 加 x-default → 工具检查。详见hreflang 常见错误与验证工具。

U
UFO_PF作者

专注 WordPress 生态的实战作者,内容以「可复制、可验证」为第一原则。

留下你的想法

邮箱地址不会被公开。带 * 的为必填项。