WordPress主題本地化

來自維基學院

目前大多數WordPress主題(皮膚)都是英文的。而對於中文或其他語言用戶來說,為了與網站內容語言一致,需要將界面轉化為本地化語言。

首先,要確定這個主題是否支持「國際本地化」,即是否為翻譯為多種語言而設計。在WordPress安裝主題界面,可以篩選「支持多國語言翻譯」條件的主題。支持國際本地化的主題的PHP代碼有着明顯的不同:

<button class="search-submit button small" type="submit" role="button"><?php _e( 'Search', 'corpo' ); ?></button>
<button class="search-submit button small" type="submit" role="button">Search</button>

可以看出,支持國際本地化的主題中所有顯示為文本的字段都用<?php _e( 'Search', 'corpo' ); ?>的形式來表示,而不是直接插入文本。這樣WordPress就可以根據WordPress的語言不同,啟用不同的主題語言。而不支持國際本地化的主題,只能通過手動修改所有出現在界面中的文本,才能實現本地化。

支持國際本地化的主題[編輯 | 編輯原始碼]

國際本地化是通過讀取一系列語言文件實現的。語言文件位於「/themes/主題名稱/languages」目錄下,每種語言都有以語言代碼明明的.po和.mo文件。還有一個特殊的以主題名字命名的po文件,它是一個模板,可以用來翻譯成其他語言。如果沒有你所使用的語言(簡體中文是zh_CN,繁體(台灣)zh_TW,繁體(香港)zh_HK),則需要自己創建。

下載那個特殊的以主題名字命名的po文件。po文件是一個文本文件,可以文本編輯器打開。而po文件需要編譯成mo文件之後才能夠被WordPress使用。(po文件是給人讀的,而mo文件是給程序讀的)我們可以用poedit這個軟件,它在GNU/Linux,Windows和Mac OSX上都可用。

Poedit 在 linux 中的截圖
Poedit 在 linux 中的截圖

用poedit打開po文件之後,逐條翻譯。要注意像「%」「%s」這樣的標記是代指輸入內容的,因此要保留原樣,如「% Comments」翻譯成「% 條評論」。國際本地化是很複雜的工作,因為不同的語言不一定有如英語一般的邏輯和語法。因此,良好的國際本地化主題應該充分考慮了這種差異,避免為本地化造成困難。而在本地化的過程中,也要巧妙轉換以適應本地化語言的表達方式。對於不確定的翻譯,可以留空,WordPress會按照英文原文顯示沒有翻譯的字段。

翻譯完成後,保存。poedit會自動生成一個mo文件。將文件以語言編碼命名,如zh_CN.po,zh_CN.mo,然後上傳到「/themes/主題名稱/languages」目錄。

在瀏覽器中打開或刷新你的WordPress站點,它已經可以以本地化語言顯示了!

不支持國際本地化的主題[編輯 | 編輯原始碼]

這樣的主題修改起來十分複雜,需要在「儀錶盤》主題》編輯」中修改代碼。對於所有出現在界面上的文本,都要修改成本地化語言。

如:

<button class="search-submit button small" type="submit" role="button">Search</button>

要修改為:

<button class="search-submit button small" type="submit" role="button">搜索</button>

用戶需要熟悉HTML和PHP才能進行操作。