Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

zh-tw:Multilingual WordPress

WordPress 不支援立即可用的雙語或是多語的部落格,不過倒是有WordPress社群開發的外掛允許你容易地建立多語部落格。

建立多與的部落格基本上就是安裝一種以上的語言到WordPress,然後讓外掛來切換,這包括你需要手動安裝很多外掛的.mo語言包檔案,參閱[Installing WordPress in Your Language]更多資料。

免費的WPGlobusPolylangqTranslatexili-languageSublanguage外掛可以安裝在獨立的WordPress站台上,對於多站點的WordPress來說(每種語言一個網站),你可以試試 Multisite Language SwitcherZantoMultilingual Press或者購買WPML

不同形式的多語言外掛

有一些基本形式的多語言外掛:

  1. 以每種語言一篇文章的多語言文章管理(例如,WPML - 付費的、 xili-languagePolylangBogo),翻譯被連結在一起,然後說明這一頁是另一頁的翻譯。
  2. 在每一篇相同的文章裡面儲存所有不同的(例如,qTranslate)。
  3. 在產生的頁面上管理翻譯而不是使用文章的內容來翻譯(例如,TransposhGlobal Translator)。
  4. 直接引導你到站外翻譯服務的外掛(例如,Google AJAX Translation)。
  5. 一些像是Multisite Language Switcher跟較新的Multilingual Press的外掛藉由來回的偵測將分開的每種語言的WordPress網路(多站點)連結起來。


每篇文章一種語言

指定每篇文章一種單一語言的多語言外掛可以讓使用者選擇文章的語言,然後增加翻譯變成新文章(頁面、標籤跟分類也是相同的)。

然後不同語言版本的內容可以連結起來形成翻譯群組,這個群組允許使用者切換顯示的語言。

優點:

  1. 資料的庫文章內容不用修改(容易安裝跟移除)。
  2. 所有的資訊預設都會翻譯,如果文章內有自訂欄位,他們連結到這篇文章時,他們就會跟這個語言相關。
  3. 有些外掛使用 - 佈景主題顯示的術語 - 本地化的佈景主題提供了語言包檔案(.mo),在WordPress裡本地化是基於 GNU gettext的技術,所以當一篇文章以法文寫成,外掛會切換所有佈景主題的術語為相同的語言(這裡是法文),檔案可以完成網站特定的術語(分類標題、小工具、連結…),不需要重翻,只要增加特定的術語跟翻譯到目標語言中即可。
  4. 其他分析內容的外掛(像是相關文章)一樣可以正常執行。

缺點:

  1. 較複雜的結構,外掛需要呼叫很多WordPress函式然後過濾傳回匹配的語言內容。
  2. 有些外掛需要額外的資料表 - 一般來說要記住翻譯群組,較新的外掛會用到自訂的分類法或是文章的自訂欄位來取代。

一篇文章所有語言

在相同的文章內記住所有的語言內容的多語言外掛使用語言的meta標籤來分辨不同的語言內容,當文章顯示的時候,它會先被處理,然後只有啟用的語言內容會留下來。

優點:

  1. 並排編輯很容易實作。
  2. 很少東西會被破壞,沒有額外的資料表在WordPress裡不需要修改太多。

缺點:

  1. 為了要建構多語內容,使用者需要手動增加語言標籤,外掛無法呼叫每件事。
  2. 移除可能有點複雜,因為資料庫需要清理多語內容。

在已有的頁面上管理翻譯

多語言外掛使用WordPress產生的內容頁面來執行翻譯,當頁面顯示在WordPress的時候,外掛(離線或上線)嘗試建立該頁面的翻譯版本使用機械翻譯,之後翻譯可以手動更改。

優點:

  1. 安裝簡單而且頁面上的所有內容都可以翻譯。
  2. 編輯翻譯也很簡單。

缺點:

  1. 自動翻譯不夠好而且網站上的頁面可能不好翻譯。
  2. 內容跟翻譯有很強的耦合關係,當原來的內容改變時,翻譯的部份可能有問題。

引導你到站外的翻譯服務外掛

哪些多語言外掛一般被用在建立小工具來增加捷徑以便使用線上翻譯服務(像是Google翻譯),內容透過第三方引擎依照需求來自動翻譯。

優點:

  1. 安裝簡單而且頁面上的所有內容都可以翻譯。
  2. 很明顯的翻譯過程是自動的,所以使用者的期望較低。

缺點:

  1. 自動翻譯不夠好而且網站上的頁面可能不好翻譯。
  2. 那些外掛不能改變翻譯的能力限制了內容發佈者提供較佳翻譯內容的能力。

在自己的WordPress安裝一種語言

你想要翻曳的每一種語言分開建立站台(例如,在WordPress Multisite的安裝),所有的站台需要執行相同的佈景主題跟外掛,當一個翻譯原始的文章被翻譯的文章偵測到,系統會有一個資料表來建立翻譯的關係。

優點:

  1. 每一種語言的站台有一般的WordPress安裝跟文章(文章的自訂欄位跟額外的資料庫用來儲存翻譯資料)
  2. 假如你關閉外掛內容還是可以正常運作,雖然沒有了原始/翻譯的資料庫資訊。

缺點:

  1. 分開的站台建置需要更多的管理而這可能是你不想要的。

語言的協調

語言的協調的意義是如何決定使用者看到網站時顯示的語言。

無論儲存多語言內容的解決方案,多語言外掛也需要能夠選擇哪種語言要顯示。

一般來說,URL會說明顯示的語言,針對編碼語言的資訊來說不同的URL策略有:

  • 把語言名稱做為參數:example.com/?lang=en 或 example.com/?lang=es
  • 新增虛擬的'目錄'做為語言的名稱:example.com/en/ 或 example.com/es/
  • 使用不同的網域給不同的語言:www.example.com 或 es.example.com

如何選擇正確的多語解決方案

選擇最適合你需求的多語言外掛要花一些時間,參閱WordPress Plugin Directory有多語言外掛的列表。

不會只有一種方法適合內容策略、資料模式、文章跟頁面數以及訪客預期的行為/經驗,對WordPress網路(多站點),需要有更多伺服器管理的知識。

在任何情況下,安裝多語言外掛對站台來說是個很大的改變,先建立一個測試網站,然後驗證所有需要的外掛跟佈景主題是否可以正常運作後再安裝,是比較好的主意。

因為很多多語言外掛同時會改變資料庫,所以在實驗前需要做[Backing_Up_Your_Database database backup]。

相關文章