2014-05-08 46 views
0

我工作的网站提供英语和德语内容。我想向用户展示正确的语言。为用户提供正确的语言

情况例如:

因此,当有人来/访问:

www.example.de 
www.example.ch 
www.example.at 

语言应该是德语。

但是,如果有人谈到:

www.example.com 

我要先问通过JavaScript如果浏览器语言是德语,如果是,
我重定向到.de域。如果没有,该网站是英文的。

这是否是最好的方式?也为SEO目的?有没有人有更好的主意?我知道还有一种方法可以用php来做,这是否更好?

这里是我与重定向代码:

$.browserLanguage(function(language, acceptHeader) { 
    if (language == "German") { 
     window.location.href = "http://www.example.at" 
}); 
+0

他们都解决相同的代码?为什么不能只检查PHP中的域名并进行相应的服务? –

+0

我根本不会重定向,也许只是在顶部栏中显示链接提示,以便用户可以自己选择。也许他们有充分的理由以另一种语言访问该网站。如果他们更频繁地访问该网站,他们可能会记住或收藏正确的网址。如果他们通过搜索引擎进入,他们可能会因为搜索条件的语言而找到正确的版本,如果他们因为任何原因而出现了错误的版本,可以将它们提示给其他版本,而不强迫他们。 – GolezTrol

+0

问题是,很多人可能会来到我的身边,因为英国英语关键词,然后会显示错误的页面。我提供了改变语言的可能性。我刚刚在Google Analytics上看到,很多人在离开页面后不到1秒,因为他们没有在寻找改变语言的方式。这就是为什么我想首先给他们正确的语言。 –

回答

0

对于SEO的目的,这一点很重要,所有这些领域都从主站点以某种方式连接(用旗一点点“选择语言”部分它的确定,这些是抓取工具的链接),因为抓取工具通常不会执行javascript。

您不必在客户端执行Javascript来检查客户端的首选语言。可以做到这一点上服务器侧读取 '的Accept-Language' HTTP报头,其看起来像这样:

接受语言烯,DE; Q = 0.5

在这种情况下,英语是优选的,而德语是第二(q = 0.5)。

从SEO的角度来看,分开的语言单独的域是好的。搜索引擎需要在不同的网址下有不同的内容(不同的语言)。你也可以使用example.com/[lang]/格式,它不需要注册多个域。

+0

我不太明白这一点。你是说,为了SEO的目的,最好有www.example.com/de和www.example.com/en页面?或者,如果浏览器是英文的,我是否应该有德文版的www.example.com并链接到www.example.com/en? 这是什么意思有一个Accept-Lanugage参数?如果有人来自法国,这对他们意味着什么? 对不起,我需要更长的时间才能理解这个...... –

+0

不,我的意思是,最好是example.com/de比example.com下的英文和德文内容更好。 可以在服务器站点上处理Accept-Language头,以在那里进行重定向,而不需要客户端代码。 –

相关问题