如果今天不努力,明天也不努力,那么人生只是在重复而已(深呼吸,保持身体与心灵的安静)

使用rel=”alternate” hreflang=”x” 做多语言网站的利器

搜索引擎 Sam 821℃

为了服务于世界各地的用户,许多网站都会提供各种翻译版本,或针对特定区域的用户提供定制内容。Google 使用 rel=”alternate” hreflang=”x” 属性在搜索结果中提供正确的语言或区域网址。

下面是一些适合使用 rel=”alternate” hreflang=”x” 的情况示例:

主要内容采用单一语言,而只翻译模板部分(例如导航和页脚部分)。以用户生成的内容为主的网页(如论坛)通常会采取这种做法。
内容存在细微的区域性差异,并且采用单一语言为不同区域的用户提供类似的内容。例如,您可能会有面向美国、英国、爱尔兰用户的英语内容。
您的网站内容已完全翻译。例如,您的每个网页都有两个版本(德语版本和英语版本)。
使用语言注释
假设您将网页的英语版本托管在 http://www.example.com/ 上,而将其西班牙语版本托管在 http://es.example.com/ 上。您可通过以下三种途径之一告知 Google,这个包含西班牙语代码的网址即是此英语网页对应的西班牙语版本:

标头中的 HTML link 元素。 在 http://www.example.com/ 的 HTML <head> 部分,添加一个 link 元素,该元素指向此网页在 http://es.example.com/ 上的西班牙语版本,如下所示:<link rel=”alternate” hreflang=”es” href=”http://es.example.com/” />
HTTP 标头。 如果您发布的是非 HTML 文件(如 PDF),则可使用 HTTP 标头来标识某个网址的不同语言版本:Link: <http://es.example.com/>; rel=”alternate”; hreflang=”es”
要在 Link HTTP 标头中指定多个 hreflang 值,请用英文逗号将这些值隔开,如下所示:Link: <http://es.example.com/>; rel=”alternate”; hreflang=”es”,<http://de.example.com/>; rel=”alternate”; hreflang=”de”
站点地图。您可以通过站点地图提交语言版本信息,而非使用标记。
如果您的某个网址有多种语言版本,那么您应该在每种语言版本的网页上标识出不同的语言版本(包括其自身的语言版本)。例如,如果您的网站提供法语版本、英语版本和西班牙语版本的内容,则西班牙语版本除了要包含指向法语版本和英语版本的链接之外,还必须包含一个指向其自身的 rel=”alternate” hreflang=”x” 链接。同样,英语版本和法语版本也都必须包含对所有三个版本的相同引用。

您可以将同一个网域中的多语言网址指定为给定网址,也可以使用其他网域中的网址。
如果您需要减少网站中双向链接的数量,以便于部署、维护或迁移(例如,您的网站支持 40 种语言,并且您新建立的西班牙语网页将从 HTTP 迁移到 HTTPS),请务必在新扩充的语言网页和源语言/主要语言网页之间建立双向链接。例如,如果您的网站最初是使用法语建立的并采用 .fr 网址,那么以下做法就更为重要:在较新的墨西哥语 (.mx) 和西班牙语 (.es) 网页与重要的 .fr 网页之间建立双向链接,而不是在新的西班牙语变体网页(.mx 和 .es)之间相互建立双向链接。

如果您有多个备用网址,且这些网址均面向使用相同语言但生活在不同语言区域的用户,那您不妨考虑为地理位置不明确的用户提供一个通用网址。例如,您可能针对爱尔兰、加拿大和澳大利亚地区说英语的用户提供了特定的网址(分别使用 en-ie、en-ca 和 en-au),但您希望其他所有说英语的用户都能看到您的通用英语版 (en) 网页,并希望其他所有用户都能看到您的首页。在这种情况下,您便应为英国(只是举例)的搜索用户指定通用英语版 (en) 网页。您可以使用站点地图文件或使用 HTML link 标记(如下所示)为这组网页添加注释:

<link rel=”alternate” href=”http://example.com/en-ie” hreflang=”en-ie” />
<link rel=”alternate” href=”http://example.com/en-ca” hreflang=”en-ca” />
<link rel=”alternate” href=”http://example.com/en-au” hreflang=”en-au” />
<link rel=”alternate” href=”http://example.com/en” hreflang=”en” />

对于语言/国家(或地区)选择器或自动重定向首页,您还应为 hreflang 值“x-default”添加注释:
<link rel=”alternate” href=”http://example.com/” hreflang=”x-default” />支持的语言值
hreflang 属性的值用于标识备用网址的语言(以 ISO 639-1 格式表示)和/或区域(以 ISO 3166-1 Alpha 2 格式表示)。例如:

de:德语内容,不限区域
en-GB:英语内容,面向英国境内的用户
de-ES:德语内容,面向西班牙境内的用户
请勿仅指定国家/地区代码!Google 不会自动从国家/地区代码中衍生出语言。如果您希望简化标记,则可仅指定语言代码。在语言代码后面添加国家/地区代码可使相应网页仅面向特定区域显示。例如:

be:白俄罗斯语内容,不限区域(比利时法语区除外)
nl-be:荷兰语内容,仅面向比利时
fr-be:法语内容,仅面向比利时
如果有多种语言脚本变体,系统会根据国家/地区推断出适当的脚本。例如,针对 zh-TW 用户使用繁体中文 (zh-TW) 时,系统会自动衍生出相应的语言脚本(此示例中为繁体中文)。您还可以利用 ISO 15924 明确指定脚本,例如:

zh-Hant:中文(繁体)
zh-Hans:中文(简体)
此外,您也可以同时指定脚本和区域,例如使用 zh-Hans-TW 为台湾用户指定中文(简体)。

最后,“x-default”这一保留值用于指明那些不专门针对某一语言或区域的语言选择器/重定向程序,例如:显示可供点击的世界地图的首页。

常见错误
重要提示:请确保您提供的 hreflang 值确实有效。请特别注意以下两种最常见的错误:

缺少确认链接:如果网页 A 链接到网页 B,那么网页 B 必须要链接回网页 A。如果所有使用 hreflang 注释的网页并未全部满足这项要求,则系统可能会忽略或无法正确解译这些注释。
语言代码不正确:确保您使用的所有语言代码均标识出备用网址的语言(以 ISO 639-1 格式表示)和区域(可选,以 ISO 3166-1 Alpha 2 格式表示)。仅指定区域是无效的。
hreflang 配置示例:注释实例
例如,Widgets, Inc 有一个面向美国、英国和德国境内用户的网站。以下网址包含的内容大致相同,但具有区域差异:

http://www.example.com/:不针对任何语言或语言区域的默认页;可能会提供选择器,供用户选择自己的语言和区域。
http://en.example.com/page.html:英语首页。包含了有关从美国到全球各地的运费的信息。
http://en-gb.example.com/page.html:英语页面;显示以英镑为单位的价格。
http://en-us.example.com/page.html:英语页面;显示以美元为单位的价格。
http://de.example.com/seite.html:相应内容的德语版页面。
rel=”alternate” hreflang=”x” 表示网页级而不是网站级,因此您需要标记每一组网页,并根据情况标记首页。您可以根据需要指定任意数量的内容变体和语言/区域组合。

要告知 Google 您希望对使用德语版 Google 的搜索者显示该网页的德语版本、对使用 google.com(显示为英语)的搜索者显示美式英语 (en-us) 版本、对使用 google.co.uk(显示为英语)的搜索者显示英式英语 (en-gb) 版本,请使用 rel=”alternate” hreflang=”x” 标识备用语言版本。

添加一组 rel=”alternate” hreflang=”x” link 元素,以更新该组中每个网址的 HTML。对于不针对任何特定语言或语言区域的默认页,请添加 rel=”alternate” hreflang=”x-default”:
<link rel=”alternate” hreflang=”x-default” href=”http://www.example.com/” />
<link rel=”alternate” hreflang=”en-gb” href=”http://en-gb.example.com/page.html” />
<link rel=”alternate” hreflang=”en-us” href=”http://en-us.example.com/page.html” />
<link rel=”alternate” hreflang=”en” href=”http://en.example.com/page.html” />
<link rel=”alternate” hreflang=”de” href=”http://de.example.com/seite.html” />

此标记用于让 Google 的算法将这些网页全部视为彼此的备用版本
原文地址:https://support.google.com/webmasters/answer/189077?hl=zh-Hans

转载请注明:涛哥笔记 » 使用rel=”alternate” hreflang=”x” 做多语言网站的利器

喜欢 (0)