Hreflang三种标记方法,适用针对不同语言提供了多个版本页面的页面
如果某个网页针对不同语言或语言区域提供了多个版本,需将这些不同变体告知 Google。这样一来,Google 搜索便可按语言或区域将想访问您网页的用户引导至最恰当的版本。
可通过以下三种方式向 Google 指明某个网页的多个语言/语言区域版本:
1. HTML
2. HTTP 标头
3. 站点地图sitemap.xml
这三个方法选择其中之一即可,另外,标签是自引用到页面而不是域。
可以通过在网页<head>中添加元素
<link rel="alternate" hreflang="x" />
将网页的所有语言和区域变体告知 Google。
该代码的每个部分的含义:
link rel=“alternate”:这个标签中的链接是这个页面的另一个版本。
hreflang=“x”:它是备用的,因为它使用不同的语言,而该语言是x。
href=“https://example.com/alternate-page”:此 URL即是备用页面。
一个页面的某一个语言版本的html标记里都要包含关于这个页面的所有的语言版本。
示例:https://www.audible.com/
注意:
1.首先用canonical属性包含此页面的语言页:https://www.audible.com/
2. 再用alternate属性指出这个页面各个语言对应的语言版本,如德国区域说德语的,对应的网址是https://www.audible.de
3. 再打开https://www.audible.de页面查看源代码hreflang部分:
可以看到目前canonical属性包含的语言页是https://www.audible.de,而
https://www.audible.com/ 则以alternate属性 hreflang=”en-us”所标识
<link rel="alternate" hreflang="en-us">
对于 PDF,DOC 等非 HTML 页面,不能通过将标签放在 HTML 的 中来实现 hreflang。因为pdf文件没有 HTML。此时,可以使用 HTTP 标头(HTTP Headers)来指定文档变体的相关语言。
标头格式如下:
Link: <url1>; rel="alternate"; hreflang="lang_code_1", <url2>; rel="alternate"; hreflang="lang_code_2",
示例:
HTTP/1.1 200 正常
内容类型:application/pdf
Link: <https://example.com/file.pdf>; rel="alternate"; hreflang="en",
<https://de-ch.example.com/file.pdf>; rel="alternate"; hreflang="de-ch",
<https://de.example.com/file.pdf>; rel="alternate"; hreflang="de"
通常是用于具有多种语言/国家/地区版本的大型站点的最佳方法, 可以使用 XML 站点地图将每个网址的所有语言和区域变体告知 Google。
子<xhtml:link>
如果某个网页有 3 个版本,那么站点地图中会有每个版本对应的网址条目,并且每个条目都包含 3 个相同的子条目。
示例:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://www.example.com/english/page.html</loc>
<xhtml:link
<xhtml:link
rel="alternate"
hreflang="de-ch"
href="https://www.example.de/schweiz-deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="en"
href="https://www.example.com/english/page.html"/>
</url>
<url>
<loc>https://www.example.de/deutsch/page.html</loc>
<xhtml:link
rel="alternate"
hreflang="de"
href="https://www.example.de/deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="de-ch"
href="https://www.example.de/schweiz-deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="en"
href="https://www.example.com/english/page.html"/>
</url>
<url>
<loc>https://www.example.de/schweiz-deutsch/page.html</loc>
<xhtml:link
rel="alternate"
hreflang="de"
<xhtml:link
rel="alternate"
hreflang="de-ch"
href="https://www.example.de/schweiz-deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="en"
href="https://www.example.com/english/page.html"/>
</url>
</urlset>
说明:
-
为每个网址分别创建一个单独的<url> 元素,与普通sitemap一样
-
每个<url> 元素都必须包含一个指明网页网址的 <loc> 子元素
-
每个<url> 元素都必须包含一个子元素 <xhtml:link rel="alternate" hreflang="supported_language-code">,其中应列出网页的每个备用版本,包括网页自身。
Hreflang tag自动生成器:
https://www.aleydasolis.com/english/international-seo-tools/hreflang-tags-generator/
总结:
Hreflang 是一个简单的 HTML 属性,但要掌握它可能具有挑战性。
本篇文章来源于微信公众号: 喃姐SEO日志