制作本地化网站的最佳方法

9
什么是让网站支持多语言的最佳方法?
我正在开发一个网站,我们的经理希望它有以下特点: http://www.website.com - 默认为英语 http://fr.website.com - 法语 http://de.website.com - 德语
他说这对SEO有好处,一些开发人员想基于cookie和用户的accept-language来实现,因此URL始终为http://website.com,但内容将基于cookie/accept-language。
你认为呢?
谢谢!
4个回答

2
这可能是一个晚回答,但我仍然会回答你(我希望这对其他人有益)。

http://www.example.com/应该默认为英语吗?

不应该。您应该始终检测用户的首选语言。也就是说,Web浏览器将向您提供AcceptLanguage标头,并列出最终用户能够理解的语言。如果发生最优先语言不是您的网站/ Web应用程序支持的语言,则应尝试从AcceptLanguage中选择下一种语言。只有当没有适合的语言时,您才应该退回到默认语言(通常为英语,美国)。

我们应该使用语言作为域名的一部分吗?

这似乎是个好主意。当您检测到语言时,您可能想将用户重定向到相应的页面。它可以是类似于http://french.example.com/http://german.example.com/http://www.example.com/index.html?lang=fr之类的东西。
实现这样的机制很好 - 在这种情况下,人们实际上可以将正确的语言作为书签保存。当然,如果有人使用语言作为参数导航到您的网站,则会跳过检测,因为此时没有意义。

总之:

您可能应该检测Web浏览器提供的语言,并显示为您有多个网站(每种语言一个)。这就是用户可以选择哪一个进行书签标记的方式。当然,Web搜索引擎可能会单独索引内容,但它们更愿意查找robots.txt,所以......无论如何,以几种特定于语言的网站出现都很好。


2

这篇文章似乎对您的问题提供了一个很好的指南:http://www.antezeta.com/blog/domains-seo/

基本上,他们建议首先通过顶级域名(TLD)进行本地化,其次是子域名,最后是目录。

使用Cookies是一个坏点子,因为谷歌无法索引您的本地化内容。


2
那个链接现在没有用处。 - Nagaraju

0
大多数开源的本地化和全球化方法都需要开发人员投入大量精力,并且在复制和代码变得更加复杂时维护起来非常复杂。
我的当前公司Localize.js可以无缝解决这个复杂的痛点,通过跟踪网站短语变化、自动订购翻译以及为您动态呈现语言。

https://localizejs.com/

如果您有任何问题,请随时发送电子邮件至johnny@localizejs.com


0
我曾经听过我的一位老师说,当他进行这项工作时,他只需制作名为“eng.php”、“fr.php”等的PHP文件...

在这些文件中,有关联数组。 键始终相同,但翻译不同。
然后您只需要在您的PHP文件顶部要求正确的语言文件,如果您解析键,它将始终处于正确的语言中。

1
嗯,依我看,那很快就会变得相当难以维护。 - Austin Burk
@AustinBurk 这实际上是很多翻译服务完成工作的方式。 - Brian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接