研究:31% 的国际网站包含 hreflang 错误

已发表: 2023-04-04

对于许多 SEO 来说,实施 hreflang 可能是一项具有挑战性的任务。 对于那些只了解一种以上语言的人来说,跨多种语言的无数语法变化可能很困难。

理解特定语言的细微差别和区域定位也增加了复杂性,这通常只有母语人士或彻底研究过该语言的人才能理解。

不正确的 hreflang 实施会导致许多不利于 SEO 性能的并发症(即重复内容、错误索引和差的 SERP 可见性)。

必须小心实施 hreflang。 值得庆幸的是,hreflang 有详细的文档记录,并且可以通过各种 SEO 工具识别相关问题。

Hreflang错误研究

为了确定 hreflang 问题的普遍程度以及哪些更常见,我与 NerdyData 合作,这让我可以访问他们包含 hreflang 代码的网站数据库。

NerdyData 提供了一份包含 18,786 个网站的列表,其中至少包含一个 hreflang 实例,在源代码中声明了一个替代项。 因此,这项研究只说明了在 <head> 中实现的 hreflang,而不是通过 XML 站点地图或 HTTP 标头。

我通过以下方式进行了研究:

  • 在 Screaming Frog 中运行爬虫以验证主页上是否存在 hreflang。
  • 删除 GEO-IP 重定向,以便完整的 URL 列表在 200 秒内解析。
  • 利用 HreflangChecker.com 和 Visual SEO Studio 批量处理 URL 以识别工具识别的常见问题。

31.02% 的网站包含冲突的 hreflang 指令

我的调查结果显示,31.02% 的提供多种语言服务的网站存在相互冲突的 hreflang 指令。 当网页具有针对不同语言和地理定位的各种 hreflang 标签时,可能会发生冲突的 hreflang。

简而言之,多个 URL 已分配给一种语言或地区,向搜索引擎发送令人困惑的信号。 例如:

  • <link rel=”alternate” href=”https://example.com/” hreflang=”en” />
  • <link rel=”alternate” href=”https://example.com/en-uk/” hreflang=”en-gb” />
  • <link rel=”alternate” href=”https://example.com/en-us/” hreflang=”en-gb” />
  • <link rel=”alternate” href=”https://example.com/en-au/” hreflang=”en-au” />

这种混淆可能导致围绕重复内容和不正确的排名和索引的复杂化,使其难以在 SERP 中很好地放置。

即使用户在表现良好的网页中找到您的网页,如果为他们提供的页面版本不正确,他们的用户体验也会很差。

16.04% 的 hreflang 集群缺少自引用标签

当页面包含指向其 URL 的 hreflang 标记时,就会发生自引用 hreflang。

本质上,页面表明它有多种语言版本,包括页面的原始语言。

尽管最初看起来是一种多余的策略,但它是国际 SEO 的良好做法。 不幸的是,16.04% 的多语言网站没有自引用 hreflang 标签。

当使用自引用 hreflang 标签时,搜索引擎可以更好地理解同一页面的不同版本之间的关系,包括不同语言的页面。

鉴于 hreflang 是大约 20 个规范化信号之一,它是一个需要包含的重要信号。

47.95% 的网站不使用 x-default

x-default 属性向搜索引擎发出信号,表明页面不以特定语言或位置为目标,将其定义为页面的默认语言版本。

当页面以多种语言提供但不以用户的首选语言提供内容时,它特别有用。

hreflang 中不一定需要 x-default 属性。 多达 47.95% 的多语言网站目前没有使用它。

但是,在用户使用不可用的特定语言搜索页面的情况下使用它可能是有益的,因为它可以帮助搜索引擎找到最合适的页面版本来显示。

请务必注意,仅当其他语言不可用时才应使用 x-default 属性。 如果存在其他可用语言,则应使用 hreflang 标记指定每种语言。

此外,x-default 不应在特定语言或位置的特定页面上使用。

8.91% 的 hreflang 集群至少包含一个无效语言代码实例

在 hreflang 属性中使用两个字母的 ISO-639-1 格式是必不可少的。

不幸的是,语言代码出错很常见,会导致多个问题影响网站的国际定位。

我的研究发现,目前有 8.91% 的针对不止一种语言的网站包含未知语言代码。

这可能只是一种混淆语言和位置代码的方法,但许多常见问题可能是原因。

某些语言代码与国家/地区的拼写不完全匹配。

例如,您可能希望克罗地亚语的语言代码是“cr”,但实际上是“hr”。 因为代码不明显,所以在实现语言代码时很容易出错。

1.6% 的 hreflang 集群包含至少一个无效区域代码实例

与之前的统计数据相反,相对较少的 hreflang 集群包含无效的区域代码。

虽然不需要使用两个字母的 ISO-3166-1 区域代码,但它确实有助于在两个或多个具有不同拼写规则的国家/地区之间定位相同的语言。 这样做可以为搜索引擎提供更多上下文,查看用户位置和语言。

回到我之前的例子,你必须使用代码“en-US”来定位美国的用户。 如果将其设置为“en-GB”,您将只针对英国用户,完全错过了您的目标受众。

这里的常见错误包括:

  • <link rel=”alternate” href=”https://example.com/en-gb/” hreflang=”en-uk” />
  • <link rel=”alternate” href=”https://example.com/en-eu/” hreflang=”en-eu” />

在这里,条目都针对英语,但也打算针对英国和欧洲。 UK 和 EU 都是无效代码,因为它是 GB(大不列颠),您不能将欧洲定位为一个大陆。

西班牙语定位在拉丁美洲也可能存在问题,集群试图定位 es-la、es-lx 和 es-419 以试图定位整个区域,而您应该定位单个国家或保留西班牙语作为一般语言。

22.46% 的 hreflang 集群包含不规则/不寻常的语言-区域组合

使用 hreflang 定位没有母语的国家/地区有一系列好处,其中一个主要好处是改善非母语人士的用户体验。

例如,荷兰语是荷兰的母语,但估计 95% 的人口也会说英语。 还有大约 97,8000 名英国国民居住在荷兰。

拥有如此多的英语使用者,将您的英语网站页面定位到荷兰的用户是有道理的。

但是,并非所有组合都有意义。 例如:

  • <link rel=”alternate” href=”https://example.com/en-vn/” hreflang=”en-vn” />
  • <link rel=”alternate” href=”https://example.com/es-ie/” hreflang=”es-ie” />
  • <link rel=”alternate” href=”https://example.com/zh-zm/” hreflang=”zh-zm” />

虽然上面的三个示例将通过 hreflang 测试并且在技术上是准确的,但赞比亚的中文使用者数量可能不会产生这个替代版本的结果。

创建毫无意义的替代版本会产生额外的和不必要的抓取需求以及 Google 可能认为重复的版本,从而覆盖规范版本。


本文中表达的观点是客座作者的观点,不一定是 Search Engine Land。 此处列出了工作人员作者。