[摘文]WordPress及其插件汉化

1.WordPress汉化手册 From 一起游

概述WordPress使用GNU gettext这一本地化框架,可以方便的在代码中标记哪些文字可以被本地化,翻译者所需要做的是收集这些被标记的文字然后将其翻译为自己的母语。在这一过程中不需要更改代码,也不需要了解这些代码是怎样运行的。
这些可被本地化的文字一般都有特殊的标记,在WP中,分别有一下三种形式

2.如何汉化 po 文件及编译成 mo 文件 From 行云流水 | Yorick’s Blog

我们在使用 WordPress 及其插件时,经常可以找到汉化的版本,一般是通过一个汉化过(翻译过)的 mo 文件来实现( WordPress 仅可识别 mo 文件),实际上不单 WordPress ,包括很多桌面应用程序都是是依靠 po 文件或 mo 文件来实现多语言版本。如果原作者提供了一个 po 文件或 mo 文件,那么我们就可以通过相关工具来自行汉化,或者翻译成其他语言版本。因为 mo 文件不能直接编辑,所以我们得编辑 po 文件,若仅有 mo 文件,那么就应该先把它转换成 po 文件后再进行编辑翻译。

3.在后台切换WordPress语言 From Yskin‘s blog

插件的原理是设置$locale变量。WordPress的get_locale()函数会先读取这个变量,如果不存在才会去检查常量WPLANG。所以,本插件只要设置一下全局变量$locale,就可以绕过常量WPLANG,控制WordPress的语言。不过,当有插件使用load_plugin_textdomain()函数载入自己的语言包的时候,就会调用get_locale()函数。所以,我们的插件需要成为第一个载入的插件。

4.解决WordPress解析.mo语言文件失败 From cnzzr.cn

WordPress在64位的CPU下(linux系统)运行时,由于PHP-gettext解析.mo语言文件出错,以至于Wordpress在使用中文版本时失败。这是由于PHP-gettext在加载.mo文件时,没有正确匹配验证位导致stream自动关闭。

相关工具
PoEdit:是一个跨平台、具有图形化界面的POT文件生成和PO文件编辑器,可在Windows、Linux 和 Mac OS X 上使用。
GNU gettext:也可以跨平台使用,和poEdit最大的区别就是gettext不具有图形化界面,一些操作需要通过命令行形式完成,而且部分步骤需要手工完成。
Po2Mo:一款 GUI 界面的转化程序,该程序是调用 msgfmt.exe 和 msgunfmt.exe 文件,从而进行po 、mo 文件互转。文件是用C#写的,需要.Net 2.0环境。

Comments are closed.