2014-05-08 45 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頭,以在那裏進行重定向,而不需要客戶端代碼。 –

相關問題