2013-12-09 60 views
0

在這裏http://book.cakephp.org/2.0/en/core-libraries/internationalization-and-localization.html#localization-in-cakephp它是寫CakePHP的多語言網站SEO

這是就可以提供可用的公共內容多從一個獨特的URL 語言是一個好主意 - 這很容易讓用戶(和搜索 引擎)找到他們正在尋找的語言,他們是 期待。

假設我有一個以英文和俄文製作的網站。默認語言是英文,所以當我打開example.com時,它是英文的。如果我點擊俄羅斯鏈接,頁面正在重新加載(會話變量Config.language被設置爲rus),並且相同的頁面example.com成爲俄語。因此,假設SE抓取了我的網站,並且具有與2種不同語言的內容相同的頁面example.com

問題1

沒有這個聲音牀SEO方面的,也有社會企業對這類事情的一些懲罰 - 具有多重內容相同的URL是否可用?

現在我搜索俄文和谷歌顯示我example.com與俄羅斯標題和元描述(或從頁面中的一些文本) - 所以我點擊該鏈接,但因爲會議沒有設置爲俄羅斯我會看到英語內容。

問題2

是不是裏面有一張牀的做法畢竟,因爲這將是棘手的用戶,因爲他們點擊的東西,看到別的東西嗎?

感謝

回答

1

是的,這是不好的做法,具有相同的URL負載不同的內容。

我見過的常見做法是使用語言前綴。例如:

example.com/eng/articles/article123 
example.com/rus/articles/article123 

example.com/en/articles/article123 
example.com/ru/articles/article123 

然後,在你的AppController中,可以檢測前綴(在你的路由設置後),並設置您想根據使用的語言那個前綴。

你也可以使用不同的slu but,但從我讀過的內容來看,大部分英文默認網站都使用英文slug - 特別是如果其他語言使用不友好的URL。

編輯:

每詹姆斯的點以下,使用子域名會被罰款了。

+0

...或fr.example.com,ru.example.com等。我個人喜歡這個過程,因爲它並不意味着語言只是一個子目錄,而是應用於根級別的東西。 –

+0

謝謝你的回答,是的,我知道其他的做法,但我不明白爲什麼它寫在蛋糕的官方網站,這是一個好主意,我相信蛋糕開發人員聰明,但在同一時間我不明白他們爲什麼認爲這是一個好主意。謝謝 – dav

+1

@Davo - 我想你誤解了。我相信他們建議你爲每種語言使用UNIQUE網址(完全像我上面的建議)。會議部分仍然是理想的,應該使用 - 這樣,如果有人通過簡單的'example.com'回到您的網站,您可以引導他們到他們上次使用的語言。這有點奇怪,但我認爲每個人都同意這一點,包括這本書。但我可以看到你如何閱讀這種方式。 – Dave