从近两年我个人的SEO服务项目情况看,有越来越多的公司需要做多语言网站优化。国内外贸SEO做多语种网站,以电商公司居多,要往外卖产品。国外公司也有不少要做中文网站,不过电子商务类的不多,大品牌、留学/移民之类的比较多。
如果涉及语言比较少,比如只有英语和中文网站,语言使用范围不复杂的话,做SEO时倒没有什么特殊要求,英文、中文网站可以放在两个独立域名上,也可以放在同一个域名的两个子域名上,甚至可以放在二级目录上,内容和结构等可以没什么关联,基本上可以各做各的。即使页面内容是对应翻译的也没问题,中译英或英译中,内容一样,语言不同,搜索引擎不会认为是复制内容。
为什么需要hreflang标签?
有时候情况复杂点,同一个国家使用多种语言,而且使用人数差别没有那么大,像中文在中国这样具有压倒性主流地位,如加拿大使用英语、法语,瑞士使用德语、法语、意大利语。一个语言也经常在多个国家使用,英语在英国、美国、加拿大、澳大利亚、新西兰,甚至新加坡,都是最使用广泛的语言。
在这些稍复杂的情况下,需要考虑一些多语言网站的SEO问题:
- 同是英文网站(或其它语言),不同国家或地区有各自独立域名,虽然也许有些许修正,如不同拼写(英国拼为colour,美国拼为color之类),但主体内容是一样的,怎样避免被搜索引擎认为是复制内容?
- 一个语种页面收录良好,另一个语种收录有问题,能不能让搜索引擎知道另一个语种版本在哪里,从而改进收录?
- 同一个国家,有不同语言使用者,要不要做多个语言版本?怎样让搜索引擎知道哪个页面是哪个语言的?
使用hreflang标签设置语言和地区,可以帮助解决这些问题。
hreflang标签的格式和用法
hreflang标签的标准格式是这样的:
<link rel=”alternate” href=”https://www.abc.com.cn” hreflang=”zh-cn” />
hreflang标签分两部分,前面是语言,后面是地区。上面标签指明的是,这个页面针对中文(zh)、中国地区用户(cn)。
对应的:
<link rel=”alternate” href=”https://www.abc.com.au” hreflang=”en-au” />
指的是英文、澳大利亚。
<link rel=”alternate” href=”https://www.abc.co.uk” hreflang=”en-gb” />
指的是英文、英国。
在三个网站上,上面三个标签都放上,搜索引擎就知道针对不同语言、地区的版本是关联的,各自的网址是什么,并且不会被当成复制内容,即使都是英文页面,也不会被当作复制内容。而且通过canonical标签,搜索引擎蜘蛛更容易发现不同语言版本的页面。
hreflang标签的几个技术细节
还有几个细节要注意。
hreflang标签可以放在同一个域名的不同页面上,也可以跨域名,放在不同域名上。这样,文章发布在不同平台,或者被转载,都是可以把权重集中到原创URL的。当然,在国内这几乎没有用。
hreflang可以只写语言部分代码,如:
<link rel=”alternate” href=”https://www.abc.com” hreflang=”en” />
但不能只写地区部分:
<link rel=”alternate” href=”https://www.abc.ca” hreflang=”ca” />
上面这个是无效的,只写地区代码ca,不会被自动判断为是英文还是法文。
所有语言页面上都要加上所有hreflang标签,形成互相确认。中文页面指明自己是中文,同时指明英文版本在哪里,英文页面同样要确认自己是英文版本,对应的中文版本在哪里。
代表语言的代码要符合ISO 369-1标准,代表地区的代码要符合ISO 3166-1 Alpha 2标准。写代码时最好到官网查一下,不要想当然。比如上面提到的,英国的地区代码是GB,不是UK,和域名后缀不一样的。
中文的语言代码是ZH,不是CN。这个是有效的:
<link rel=”alternate” href=”https://www.abc.cn” hreflang=”zh” />
这个是无效的:
<link rel=”alternate” href=”https://www.abc.cn” hreflang=”cn” />
再比如,最近一个客户的日文页面写成这样:
<link rel=”alternate” href=”https://www.abc.co.jp” hreflang=”jp” />
这个是错的。前面提到,可以只写语言代码,但日语的语言代码是JA,不是JP。
再比如,韩语的语言代码是KO,不是KR,虽然韩国的地区代码和域名后缀是kr。
Google对多语言页面的权重和排名处理
Google检测出带有hreflang标签的页面后,会把符合要求的、互相指向确认的一组页面(内容相同,但针对的语言和地区不同)当作一个整体看待。用户搜索关键词时,Google通常应该把权重最高的那个语言版本返回到搜索引擎页面上,但如果通过hreflang标签发现有一个权重虽低,但更满足用户语言和地区需求的页面,那么Google会返回这个权重低些的页面。
比如,一个在法国的用户搜索某个词,按正常排名算法返回的是权重最高的en版本页面,同时Google通过hreflang标签发现这个en页面有对应的fr版本,更符合法国用户的需求,所以就在搜索结果中返回fr页面了。有时候,这个fr页面可能权重比较低,外人看不出为什么这个页面会排名这么高,其实不是它自己的原因,是对应的en页面权重高。
不过,虽然这组多语言页面被当作一个整体,但页面权重不会叠加,还是按各个页面自己的权重计算排名的,大部分情况下,也就是看权重最高的那个语言版本。
老师是不是隐藏了一篇文章?
网站优化已经到了极致了,估计又有一帮人准备拿你的文章去做seo秘籍了!
看到代码就懵了,作为SEO人员,这样是不是没救了!
受教了,还没有怎么接触非中文的网站优化,不过这个是在网站代码方面的一些细节问题,容易被一些程序员所忽略。。。最后,我发现有篇百度官方号的文章怎么没有了
百度的朋友希望我先把官方号的帖子撤下来,因为他们还没正式发布,等正式发布了在发。
个人的意见 代表不了大众
建议不要撤 还希望以后多多分享呢
你隐藏的文章已经在各大网站发布了!通过百度快照能看到你发的文章标题,然后百度一下,很多网站已经发了!唉!
看到代码就懵了,作为SEO人员,这样是不是没救了!是没有救的。要多学习。代码是基础。没基础其他东西就不牢靠。分析问题也不透彻。
好的,我会好好学习的。。。
这个点说的不错,还有一点就是所有的语言是写在一个页面上的,网站根据地区IP和浏览器语言选择性的展现该语言部分。这样的网站我见过,而且SEO做的还不错。
根据地区IP自动跳转的网站也很好。
直接让网站识别IP,也是不错的选择哟
越来越往人工智能方面发展了!人工智能普及后!SEO还能不能存在!
好久没有充电,我想问下老师最新版SEO实战密码跟以往的版本区别在哪?
个人觉得“link标签的hreflang属性”这种表达要准确一些。老师勿怪。Maybe I’m offering to teach fish to swim.
以前没有注意这个hreflang标签的作用,谢谢提醒.^.^
不错。学习了。。。技术帝。
学习了!想问一下,那个 和本文文章是不是同个概念?
这2年开始做SEO的,不懂代码,求推荐书籍
好文章,值得欣赏!
6666666
这个针对谷歌的一些全球站优化太有用了,我这边就有一个案例,英文的收录不错,但是阿拉伯语的就坑了……用这个应该正好解决这个问题,多谢zac老师……
网站的每个页面都要加吗,还是只加首页就可以??希望老师能回答下,
每个页面都要加
那根据用户当前语言环境,自动显示不同语言版本的网站,域名是完全一样,结构也一样。这种SEO该怎么做呢?
谢谢老师分享,加上这个属性后如何知道效果呢?
请教Zac,
这个标签是有效的吗?能表示针对中国的英文使用者吗?
我发现有网站中英文切换的时候是js判断切换的,域名是一样的,去百度看了下收录,英文的收录几百条,中文只有一条首页的。这种情况作优化,是要分二级域名或二级目录形式进行中英网站分开么?
不知道留言成功了没
请教下ZAC老师或各位大神就是我正在操作一个比较大型的新闻站,总共有200多万文章,然后主站是简体的,做了多个语言版本zh-tw, zh-hk, zh-sg,zh-mo,也使用了规范的canonical和alternate的双向注释,仍旧有几十万多语言版本页面被认为是重复页面,这要怎么解决呢;还有就是网站流量有很大一部分来自台湾和香港地区,但zh-tw, zh-hk 版本的网页收录并不理想,外链情况已经比较好的情况下要如何去提升zh-tw, zh-hk 页面的收录呢?为了这个问题,已经吧Google对多语言网页处理规范看了又看,还是没想出比较好的办法
这个要检查具体网站和搜索表现才能知道,很难一概而论。几个可以考虑的点。你说多语言版本被认为是重复页面,是根据什么看出来的?语言标签肯定没问题吗?有没有用工具验证一下。多语言页面很少都收录,但如果某些语言收录太少的话,服务器设置有没有问题?速度怎么样?多语言版本的URL是怎么设计的?太多可能性。
谢谢zac老师。重复页面 是Google search console 覆盖率里面提示的”重复网页,Google 选择的规范网页与用户指定的不同” 其中给出的示例网页全部都是zh-hk, zh-sg, zh-mo的,但是也有一部分多语言页面是被指定为“备用网页(有适当的规范标记”。语言标签是没问题的,canonical和alternate双向注释检查过是规范的,每个版本的lang 标签也是对应的。多语言的URL地址格式是: 主域/zh-hk/xxxx.html 主域/zh-tw/xxxx.html 服务器是放在美国加利福尼亚,加了海外CDN
你可以email我是哪个网站,我看一下。
谢谢zac老师。如果虽然是多语言版本,但是内容完全不同。也可以使用hreflang tag吗?我们目前使用的是html lang tag。但是明明内容不同,谷歌选择的规范网页确是我们的原始语言页面,而不是多语言版本的页面。