2018年,当我第一次接到咨询客户多语言定位时,我认为这很简单也很有趣,但没有人会实际使用hreflang,因为他们根本没有国际网站!

什么是hreflang?

一个简短的解释,严格地说,hreflang注释是特定语言或区域的超链接引用。换句话说,它允许您为网站上的任何给定文档指定替代URL(分配给特定语言或地区)。

您可以通过多种方式为不同目的提供不同用途的替代网址,例如移动应用深层链接,网页的AMP版本链接,指向网站移动版本的链接(大多数网站仍然在这样做),规范,分页指令(rel = prev / next),RSS提要等。

是否仍然需要hreflang? Google可以检测出网站语言是否与用户搜索查询语言匹配。即使没有实施hreflang,它也会相应地提供正确的结果。不过,这仅适用于Google,其他搜索引擎可能仍有问题。如果您的网站使用[相同]语言(例如:在英国,澳大利亚和美国的客户)针对不同地区的用户,则更是如此。

如果它使用不同的语言,通常谷歌可以在没有隐瞒的情况下进行判断。大多数查询都使用一种语言,因此我们可以将用户发送到该版本的页面。

常见的hreflang错误

从最明显的那个开始,深入到复杂的问题:

1)将所有不同版本的页面嵌套在一个ccTLD下

ccTLD是一个特定国家/地区的域名,例如德国的* .de或英国的* .co.uk,亦者是中国的* .cn,针对每个目标市场拥有特定的ccTLD是非常有意义的。

但是,如果您只有一个ccTLD,例如* .co.uk,并且针对该特定的ccTLD实施您的所有其他目标市场页面,那么您的hreflang实施可能无法正常工作。

例如:www.example.co.uk/fr/对于法国或www.example.co.uk/it/对于意大利来说不太适合定位,但是www.example.com/fr/和www。 example.com/it/将是一个可能有效的解决方案(假定您正确实施了hreflang)。

2)hreflang注释中的ISO代码错误

在指定您打算定位的语言和/或地区时,确保在英国针对讲英语的用户时不要陷入某些陷阱,如“en-UK”而不是“en-GB”。如果您想确保您的hreflang注释是正确的,请查看语言ISO代码和区域ISO代码,或使用在线hreflang生成器工具来获取一组样本网址,例如Aleyda Solis提供的网址。

3)仅针对一个地区

由于hreflang的主要用途是以用于搜索的语言为目标用户,因此您不能仅定位到区域。但是,您可以决定让所有说英语的用户都拥有一个文件夹,或者您可以决定为每个网址指定多个hreflang。此外,请务必确保您定位的区域存在于ISO代码中。例如,您不能将欧盟,南美洲或德国的一部分(如巴伐利亚州)作为特定区域。

4)hreflang与文档语言或html语言不同

你们中有些人可能有一个巨大的网上商店,但没有资源来翻译你所有的产品描述。相反,我们假设您翻译了导航,也许用户需要点击按钮来购买您的产品。但是,产品说明默认为英文,只有其中一部分被翻译成目标语言,例如意大利语。

在这种情况下,建立一条规则只对已经完全翻译的页面标注“it-IT”,对于尚未(尚)的页面标注“en-IT”是很重要的。

请注意,目前只有Google和Yandex了解hreflang; 但是,Bing可以使用您在文档开头设置的html语言(或meta“内容语言”)。

5)缺少自引用和/或缺少返回标签

带有hreflang注释的每个页面不仅必须指向其他语言的替代项,还要指向其自身。

实际上,它应该让事情变得很简单,但这是我见过的最常见的错误之一。

此外,正如您在图片中看到的,您从网站A引用的每个网站(例如sofeminine UK)都必须返回sofeminine UK。否则,您会在Google Search Console中将此视为参考错误。

6)hreflang指向相对的URL

hreflang注释总是必须引用绝对URL 
(例如https://www. exmple.com /en/blog/),而不是相对URL(例如/ zh / blog /)。

注意:如果您已经迁移到HTTPS,或者仍然在您的日程表中,请检查您是否在每个参考中使用相同的协议,例如内部链接,rel = alternate,当然还有hreflang注释。

7)hreflang指向错误的目的地

hreflang应该始终指向另一种语言的页面的特定选择。如果您产品的详细信息页面是指类别页面或主页,hreflang未正确实施。

例如:

https://www.exmple.com/zh/sexual-wellness/fun-cup-explore-kit/将https://www. exmple.com /de/的 hreflang引用 为de-DE,它没有正确实施。您希望您的产品详细信息页面以另一种语言引用相应的产品详细信息页面,而不是分类页面或主页。

8)hreflang指向不符合规定的目的地

您使用hreflang引用的每个网址必须是可编入索引的网址

如果符合以下条件,则URL可以索引

它是一个规范的URL(即它没有引用rel = canonical的另一个URL);

它不排除通过HTTP头中的 robots.txt或xrobots进行爬网;

它不会通过元机器人(noindex)从索引中排除;

它仅指向HTTP状态为200的URL(即,不通过301,302或其他状态代码重定向到另一个URL,不是500个服务器错误或发出404或410错误)。

9)错误地阻止了hreflang

常见的hreflang驻留在你的html的<head>部分。但是,如果您发现自己的hreflang存在问题(例如,通过在您的英文网站上排名法国) – 即使您已排除上述所有缺陷 – 您的hreflang可能无法正确抓取。

其中一个原因可能是您没有在<head>部分中实现hreflang,而是在您的html中的其他位置实现了hreflang。请仔细检查是否是这种情况。

10)针对不同的脚本

从理论上讲,您也可以定位少数语言,如克林贡或Inuktitut。请注意,虽然在发表本文时,我们尚未能够全面测试所有这些内容,因此请谨慎使用,风险自负。

一些国家有脚本或方言变体,例如繁体中文和简体中文。塞尔维亚语为母语的人也可以选择使用拉丁语或西里尔文脚本。这对网站所有者来说可能是一项挑战。但是,您可以按照ISO 15924中的定义来定位这些不同的脚本。