《警告:这是一篇干货技术帖。》如果你想把你的网站翻译成其他语言,那可能也希望这些页面在全球搜索引擎上拥有好的排名。这篇文章将带您了解在使用URL(域名)结构和发布网站时需要考虑的重点。
1. URL结构
实现多语言SEO策略需要大量的时间和精力。但是如果没有好好预先规划域名结构的话,在多语言网站开始运作后才改变URL结构,不仅费时费力,而且可能会对网站的排名产生负面影响。因此,选择一个能够长久保持不变的URL结构,是很重要的。
语言 / 国家代码
你可以在多语言站点上使用不同的语言或国家代码区分。但是一旦使用了一套系统后,就应该持续沿用,而不要交替使用。
设置区域或语言代码,即为指定语言的公共识别缩写代码,通常是两个字母组成。例如,“ja”是日语的代码,而“jp”指的是日本这个国家。完整的代码可见这个链接。
从网站的角度来看,国家代码更加标准化,因为互联网登记机构是按国家分类工作的。在顶级域名后缀中使用的代码,通常被用作网站本地化的子域名前缀。
URL结构的常见方法
有三种常见的方法可以为你的多语言网站构建url。
顶级域名 TOP LEVEL DOMAINS
从域名注册的角度来看,顶级域名最不灵活,成本也最高。然而,操作起来是最简单的。因为您只需要根据网站的语言或国家,注册一个当地的全新域名。由于这是特定的国家域名,就只需要根据国家来决定默认的语言设置即可。
子域名 SUBDOMAINS
子域可提供更大的灵活性,而且也不需要再注册一个新域名。但是,您仍然需要修改域名的DNS记录。此外,还可以选择使用语言为不同子域名做区别,而不只是国家代码。
子目录 SUBDIRECTORIES
子目录为子域提供了最大的灵活性。在站点的URL路径中,添加区域代码为子目录,与子域名类似,这些域名可以是特定于国家的、特定于语言的,或者两者的混合。此外,用子目录的话,就不必修改DNS记录,所以这是一个很好的解决方案。
测量和跟踪
另一个问题,是您如何衡量到本地化站点和页面的流量。
一种基于不同地区来衡量流量的常用方法是使用国家/地区信息。该信息可以通过多种方式确定。首先,在大多数情况下,浏览器了解该国家。通常在首次设置/安装时设置。该指标的缺点是它不会告诉我们访问者当前所在的位置。因此,许多企业选择使用GeoIP查找来扩充此数据。但是,这些查找仍然可能包含一些不正确的数据。
根据国家/地区衡量流量非常容易,并且通常是您的分析工具包的一部分。此外,设计一种与该方法互补的URL结构非常简单明了。但是,由于使用国家/地区的性质,您对结果的准确性和信心可能会受到影响。
衡量流量的另一种方法是使用语言。语言往往是一种更准确的方法,因为用户倾向于只使用他们理解的语言。由于此设置直接影响浏览器的工作方式,因此可以安全地假设大多数访问者的语言设置为“正确”(注意,“正确性”是相对于用户而言的)。大多数分析软件包还默认包含基于语言的统计信息。
国际流量测量的一种更复杂的方法是使用语言和国家/地区的混合方法。在这种方法中,将对数据点之间具有相关性的流量进行测量(如果访问者的浏览器设置为美国和英语,则为IE,而GeoIP显示它们可能在美国)。尽管这种方法提高了我们对测量的信心,但我们也可能会忽略重要的数据点。
用户体验
设计国际化结构时的另一个考虑因素是用户看到的体验。如果用户的浏览器设置为特定语言,则他们应该以该语言查看您的网站。这看起来很简单,但高程度上取决于您的URL结构。
最直接的方法,是检测语言浏览器设置,然后将访问者重定向到预定义的URL。但是,我们仍然需要赋予他们自己选择其他语言的能力。因此,我们还必须实现UI语言选择器。在使用异步JavaScript进行翻译的情况下,我们可以立即更改语言,而无需从浏览器进行重新加载操作。相反,如果我们使用访问者国家/地区来控制用户体验,则我们的用户体验将更加棘手,并引发很多问题。
- 立即将用户重定向到另一个页面是否有意义?
- 我们如何将国家与语言匹配?
- 这种功能是否可取? (例如,在访客无法下达国际订单的电子商务网站中,这可能是正确的)
这些问题的答案确实可以帮助指导我们围绕URL结构进行决策。
2. 发布您的语言
除了向用户明确说明本地化内容的组织方式之外,我们还需要告诉搜索引擎,网站是以多语言发布的。
使用站点地图
确定本地化页面所在索引器的最简单方法是使用站点地图。站点地图列出了网站的链接层次结构,因此可以用来指示您的本地化页面。站点地图易于生成,因为许多CMS系统都会自动为您构建站点地图。如果您有一个静态站点,则还可以使用桌面工具来构建和维护它们。
使用HREFLANG
另一种方法是在实际页面中使用HREFLANG标记来告诉索引器可以在哪里找到我们的本地化页面。列出所有本地化页面很重要,因为索引器可以通过指向本地化页面的入站链接到达我们的网站。对于静态网站,添加这些标签非常容易,因为语言和URL不会更改。但是,如果您的网站托管在内容管理系统上,这可能会更具挑战性,特别是如果它不支持国际化。
如果您使用的是不支持国际化的内容管理系统,则有两种方法可以解决此问题。第一种方法是将hreflang标记作为数据存储在每个页面上的CMS中。由于可以在单个级别上更改URL,因此这种类型的方法具有很大的灵活性。这种方法的缺点是需要管理这组标签。
如果您的内容管理解决方案还处理有关如何构建本地化URL的规则集,那么可能存在一个更好,更自动化的解决方案。如果您有权使用这套规则,那么您所需要做的就是维护语言代码列表。另外,如果您希望避免在这些标签中添加源语言,则需要一种方法来识别用户何时位于“源”页面上。
使用 HTTP 标题
最后一个选项是使用HTTP标题,提供有关Hreflang的信息。这种方法最棘手,最不可靠。服务器响应标头通常由下游网络过滤器处理。如果您采用这种方法,请务必使用搜索引擎漫游状态,来测试设置。
发布后的网站测试
对于各种技术上的手段,不要想着只是实施之后,就一定能起作用。测试是必须的。大多数搜索引擎都提供一个界面,可正确检测到本地化页面。并且,如果您提交了站点地图,搜索引擎也会警告您任何错误。
3. 进阶整合
国际SEO的最后一个方面,涉及高级集成,这些集成使搜索引擎和其他在线内容索引器可以检测翻译的语言。
无国际化的内容管理系统
人们有时会发现,自己使用的内容管理解决方案并不提供国际化支持。如果没有将其内置到内容管理系统中,人们通常会诉诸于使用“黑客”解决方案。这些解决方案通常以某种方式复制翻译的内容,通常是多个帖子,甚至是网站。在这种情况下,基于Java的解决方案非常有用。由于翻译是远程存储的,因此不需要“黑客”。
JavaScript 和SEO 问题
有大量证据表明,Googlebot 特别擅长将 Javascript 内容编入索引。甚至Google似乎都表明这已经完成。 但是,如果要确保对所有其他索引器以及各种其他漫游器都具有支持,那么实际上只有一个选项可以确保在所有漫游器和索引器中对所有内容进行索引。此解决方案使用“呈现”方法将所有内容显示为“源”内容。这是最直接的方法,因为它不依赖于任何特定的索引器技术。
这里的目标是以您希望搜索引擎看到的方式向浏览器表示源内容。如果您的内容来自Javascript,则需要一个单独的过程来“呈现” Javascript并生成静态HTML。在这种情况下,静态HTML会直接提供给搜索引擎,并且无需了解Javascript实现。
请注意,以前的索引Javascript规范(通常称为“ escaped_fragment”(在URL中使用“!#”))是Google Ajax爬行规范的一部分。 Google已于2015年10月正式弃用它。因此,您应该为新网站选择其他方法
网友评论