我想問問最佳實踐或翻譯靜態內容的最簡單方法。例如。翻譯,「搜索」或「保存更改」。網站本地化
我現在的想法是:根據用戶的瀏覽器語言環境
(IP地址的地理位置也許,但我更喜歡瀏覽器語言)選擇一個子域,例如「fr.myweb.com」。根據語言設置設置cookie,會話變量。這部分非常簡單。
現在來翻譯部分。根據語言改變圖像不會是一個問題,因爲「_fr」前綴就足夠了。但翻譯字符串像保存更改,搜索,訂單項等。那麼,我不確定這裏。
由於其所有基於PHP和MySQL,我想的是一樣的東西:
兩個表:
- 第一個具有的默認語言的所有單詞
- 第二個有三個列表列(不包括自動遞增) - LANGUAGE_ID,翻譯,word_id
獲取所有的話,緩存查詢或什麼,現在叫反式( 'FR', '搜索')WOU ld翻譯這個詞。這應該工作,但我不知道它是正確的方法還是有更好的方法。注意:沒有谷歌翻譯。
此外,因爲我使用js/ajax,我也不確定這部分。從cookie獲取語言並製作警報等地圖,然後調用「message ['fr']」,但我不確定這部分內容。
任何想法對於兩種語言都是理想的嗎?我試過谷歌,但不滿意的結果。任何建議/鏈接表示讚賞。
Regards
避免數據庫存儲翻譯字符串。使用gettext .po文件或一個php數組。避免困難的API。使用'_(「english」)或'__(「..」)'',然後在其他語言中使用目標語言。不要使用常量或文本ID,請使用原始英文作爲輸入。 - 解釋爲什麼你看起來想要翻譯客戶端(AJAX?)而不是頁面生成(PHP)。 – mario 2010-11-12 22:00:30
我並不是指ajax,而是JS。假設你必須滿足某些條件才能做出行動,如果你不符合他們 - 你會得到一個JS錯誤。那翻譯那些東西呢? – realshadow 2010-11-12 22:06:06
仍然不知道確切的情況,但你可以試試這個http://plugins.jquery.com/project/gettext – mario 2010-11-12 22:13:02