wordpress的汉化机制
1. 在PHP文件中,需要汉化的地方使用__()或_e()函数进行标识; 2. 创建.po文件,进行翻译; 3. 将.po文件编译成.mo文件; 4. 向主题中加载.mo文件。__()函数和__e()函数
这两个函数都接收字符串作为参数。例如: 1 2 __("Translate Me") _e("Translate Me") 它们的区别在于:_()函数返回翻译后的字符串,而__e()函数打印出翻译后的字符串。其实__e()就相当于echo __()。.po文件和.mo文件
.po文件用来对已标识的字符串进行汉化,它的格式如下: 1 2 3 4 5 6 7 8 9 10 11 #: sidebar.PHP:22 msgid "Get updates by email" msgstr "通过邮件订阅更新" #: sidebar.PHP:33 msgid "Latest Posts" msgstr "最新文章" #: sidebar.PHP:37 msgid "Feed _disibledevent=>msgstr "订阅" msgid是用__()或_e()标识的字符串,msgstr是对应的翻译。 .mo文件二进制文件,它由.po文件生成,wordpress在生成网页时使用它来快速提取翻译后的字符串。快速方便地(生成.po文件和.mo文件。poedit的使用
poedit可以从它的主页下载。 如果主题目录中已经存在zh_CN.po文件,直接用poedit进行编辑即可;如果不存在则参见以下步骤: 1. 点击“文件-新建消息目录文档”。 2. 在弹出的对话框中填写“工程名称以及版本”、“团队”、“团队专用电子邮件”、“语言”、“字符集”、“源代码字符集”等信息。
3. 切换到“”选项卡,在“”中填入要汉化的主题的路径,在“”中加入一个"点(.)"。
4. 切换到“”选项卡,在“关键字”中加入“__”和“_e”,这样poedit就会在所有PHP文件中查找由__()和_e()标识的字符串。
5. 点击确定后,弹出“”对话框,把po文件命名为zh_CN.po。poedit会自动从所有PHP文件中提取出需要翻译的字符串,如下图所示,一项一项翻译就可以了。
在“”中勾上“自动编译.mo文件”,则在保存时会自动生成zh_CN.mo文件。 若翻译完后又在PHP文件中添加或删除了要翻译的字符串,点击“类目-自源更新”,poedit会查找出相应的变更。
使用汉化主题
如果你用的是wordpress中文版,那么汉化完的主题就可以直接使用了;如果是英文版,则需要把wordpress安装目录的wp-config.php文件中的: 1 2 3 define ('WPLANG',''); 改成: define ('WPLANG','zh_CN'); 更多信息参见:- I18n for wordpress Developers
- How to create a .po language translation