使用方法
- 每种语言或地区版本添加一行:填写代码(例如 de 或 de-AT)以及该版本的完整 https:// URL。
- 也可以添加 x-default URL,供未涵盖语言的访客使用。
- 修正各行旁显示的错误,然后选择 HTML 标签、XML sitemap 条目或 HTTP header。
- 复制代码,并将同一组代码添加到列出的每个页面中,使每个页面都列出所有版本,包括自身。
工作原理
hreflang 用于告知搜索引擎哪些 URL 是同一内容的不同语言或地区版本。例如,搜索引擎可以向奥地利用户显示 de-AT 页面,而不是 de-DE 页面。值由 ISO 639-1 语言代码组成,可选地加上 ISO 3166-1 alpha-2 地区代码;单独使用地区代码(如“GB”)无效。此工具会检查常见错误,例如 en-UK(正确代码为 en-GB)、EU 等非国家或地区代码,以及重复代码。代码会根据浏览器内置的语言和地区数据进行检查。
这些标注必须双向对应,并且每个页面都要指向自身:集合中的每个页面都应列出所有版本,包括自身。如果德语页面指向法语页面,但法语页面没有反向指回,搜索引擎可能会忽略这组标注。x-default 用于标记面向其他所有用户的默认页面。请使用绝对 URL,并让每个 hreflang 指向相应页面的规范版本,而不是重定向页面或带有 noindex 标签的页面。
发布这些标注有三种等效方式:HTML head 中的 link 元素、XML 网站地图中的 xhtml:link 条目,或 HTTP Link header。每组页面选择一种方式即可,无需同时使用多种方式。hreflang 是帮助选择页面版本的提示,不会提升排名。
示例
英语和德语网站
输入 en → https://example.com/ 和 de → https://example.com/de/ 两行,再添加 x-default → https://example.com/,即可生成三个 link 标签。英文页和德文页都必须包含这三个标签。
西班牙和墨西哥的西班牙语页面
两个地区版本分别使用 es-ES 和 es-MX,并添加一个不带地区代码的 es 版本(或让 es 指向其中一个版本),以覆盖其他国家的西班牙语用户。
修正常见错误
检测到 en-UK:UK 不是英国的 ISO 3166-1 代码。请改为 en-GB。
常见问题
我需要使用 x-default 吗?
它不是必需的,但建议使用。它会告诉搜索引擎:当用户与所列语言或地区都不匹配时,应显示哪个页面,例如面向全球的英语页面或语言选择器。
可以只用地区代码吗?例如 hreflang="us"
不可以。语言代码必填,地区代码可选。“us”不是语言代码,请使用 en-US。
应该使用 HTML 标签还是网站地图?
两种方式都可以。小型网站使用 HTML 标签最简单。网站地图可以减少页面 HTML 的体积,也更便于管理多种语言。HTTP 标头主要用于 PDF 和其他非 HTML 文件。
两个语言代码可以指向同一个 URL 吗?
可以。例如,en-GB 和 en-IE 可以都指向同一个英式英语页面。但同一个代码不能指向两个不同的 URL。
隐私
代码和 URL 会在浏览器中检查和格式化,不会发送或存储。