1. 程式人生 > 實用技巧 >關於修改wordpress中文語言包Zh_cn.po和zh_cn.mo

關於修改wordpress中文語言包Zh_cn.po和zh_cn.mo

這件事得從修改Wordpress底部(footer.php)的“自豪地使用Wordpress”說起。

起初,將網站SVN到本地之後,用Notepad++修改了 /wp-content/twentyeleven/Zh_cn.po 的中英文對映後再上傳上去,可是重新整理網頁,效果沒變。

原來真正起作用的是 Zh_cn.mo ,由於wordpress的中文語言包經過編譯後生成為.mo(.po)為字尾的檔案,我們無法通過常規方法(如記事本,文字編輯器等)進行直接開啟編輯。這是我們就需要一個反向編譯該工具po-edit,藉助這個工具我們可以實現對wordpress的中文語言包進行修改。

簡單的說,zh_CN,po是給人看的,而zh_CN.mo是給伺服器看的。

1. WordPress每次升級後會將新的語言包檔案覆蓋掉zh_CN.mo和zh_CN.po,因此還需要重新編輯修改這兩個檔案。
2. 有些Wordpress模版中要定義較多的個性化描述時,會在themes目錄存放該模版私有的語言包檔案,如果只有.mo,而沒有.po的話,則還需要額外安裝“gettext”將.mo檔案反編譯成.po檔案,然後在通過poEdit去修改語言包檔案。

為zh_CN.po新增自定義條目

poedit只能夠修改zh_CN.po檔案,不能新增。

使用Notepad++(其他如Editplus也行)開啟zh_CN.po,然後依據格式新增就OK了,然後再用poedit開啟編譯一下就OK了。

使用新增的自定義條目

在添加了自定義條目後,直接在php檔案中輸入"Google Site Map",頁面會直接顯示而不是翻譯。我是套用原始碼的格式

<?php printf( __( 'Google Site Map', 'twentyeleven' )); ?>

但是我覺得應該有更加簡單的方法