使用 PoEdit 翻译 WordPress 插件好处

翻译 WordPress 插件越多的语言版本,就会有越多的不同国家的人下载和使用。如果 WordPress 插件很流行,很多人使用,就会有用户把它翻译成不同的语言以方便其他地区的人能够使用它。当然最麻烦最原始的翻译方法就是逐行逐字的翻译源代码。不过现在通过 .po 文件,采用一个叫做 poEdit 的翻译软件,通过它来翻译 WordPress 插件,就变得非常简单了。

通过 .po 文件,任何人都能翻译你的 WordPress 插件,只要他对 WordPress 插件的使用的原来语言熟悉。并且 .po 文件还有一个好处就是,如果插件的源代码作了任何修改,翻译者不必查看源代码来重新翻译,因为所有需要翻译的文本都会保存在一个后缀名为 .po 文件中,翻译者所需要做的只是重新更新下 .po 文件,翻译新增或修改的部分。

翻译 WordPress 插件的准备工作

WordPress 使用 GNU gettext 机制来实现本地化。WordPress 有两个可以被插件作者调用的函数:_e 和 __( 注:两个半角下画 _ _)。每次在插件中输出文本,都应该使用这两个函数。

这两个函数使用方法是:__($message, $domain) 和 _e($message, $domain)

_e 和 __的区别是:_e 直接输出文本,而 __ 是返回文本,你需要自己输出,所以 __ 一般用在字符串连接当中

这两个函数都用 $message 作为第一个参数和 $domain 作为第二个参数。第一个参数就是你要输出的文本,而第二个参数 $domain不是可选的,它应该是一个和你插件或者主题对应的唯一的名字,举个例子,如果你开发一个叫做 random_Posts 的插件,这里 $domain 就是 random_Posts,$domain 一般是在 load_plugin_textdomain 函数中定义,下面有具体介绍。

导入WordPress 插件本地化文件

在确保输出的文本可以被本地化之后,你必须设置你的插件,使得能够导入适当的 .mo 文件。.mo 是编译后的 .po 文件,它是在 poEdit 保存的时候会自动产生的。

在你插件中的代码大致如下所示:

load_plugin_textdomain('your-plugin-domain', "/wp-content/plugins/your-plugin-directory/");?函数具体语法:load_plugin_textdomain($domain, $path)
?$domain 变量和在 __ 和 _e 中使用的是同一个变量。$path 是定义 .mo 文件的路径。可以使用相对于 ABSPATH 的相对路径。如果插件没有自己的目录,这里也可以设置为空。
这里需要注意的一件事情是,产生的任何 .mo 文件都应该以 $domain 变量的值作为文件名的前缀。如果插件的 $domain 是 Random_Posts,那么 .mo 文件将会被命名为 random_Posts-zh_CN.mo(假设插件翻译成中文)。

使用 poEdit 进行翻译 WordPress 插件

第一步:下载 poEdit
到达 poEdit 项目页面,然后下载,安装它就可以. 官方只有英文版,大家可以自己网上找个中文版。
第二步:找一个插件翻译
这里,我将举个我写的插件 random_Posts 作为例子。
第三步:打开 poEdit 并打开菜单 文件 -> 新建消息目录文档
在弹出的 ‘设置’ 对话框中,输入你项目的名称可以随便自己定义,比如我们要翻译成中文简体,语言就选 chinese,国家china , 并设置字符集为 UTF-8 源码符集也为 UTF-8。
poEdit 设置项如下图:

poEdit 设置项

设置poEdit 语言字符集,poEdit 工程名称及版本号

第四步:输入 WordPress 插件的路径

在刚才的 ‘设置’ 对话框,点击 ‘路径’ 标签,这里要特别注意,‘基本路径’设置错误是不工作的,网上大多介绍文章都是在基本路径里填上一个. ,实际操作中是不正确的,通常 '基本路径' 要添上该插件的存储位置,比如本例中的插件 random_Posts,我是保存在 E:wordpressrandom_Posts

所以 基本路径就用 E:wordpressrandom_Posts。然后点下面第二项 建立新条目的图标,输入”.”(这将告诉 poEdit 去扫描当前目录和所有子目录)。

poEdit 路径设置

poEdit 路径设置界面

第五步:设置适当的关键字

因为 WordPress 使用 _e 和 __ 函数来本地化,所以你应该让 poEdit 知道这就是它应该查找的。点击 ‘关键词’ 标签页并输入 _e 和 __ 作为关键字,你可以通过点击 ‘建立新条目’ 图标输入关键字。
软件运行界面如下图:

poEdit 关键词设置

poEdit 关键词设置 界面

第六步:点击 确定 并开始翻译

点击 “保存” 按钮并保存 .po 文件到你的插件目录下。

在你保存 .po 文件之后,会有一个窗口弹出并告诉你所有它找到相匹配的文本。

如果你不准备翻译该插件,你可以保存.po 文件并把它和插件一起分发出去,让别人能够直接使用它进行翻译。

第七步:翻译插件

一旦所有需要翻译的文本都找到了,就该开始翻译插件了。你所做的就是只要简单的找到你想翻译的文本,并增加你自己的语言。

下面的 poEdit 界面就是 WordPress 插件翻译界面。

poEdit 翻译界面就是 WordPress 插件翻译界面

poEdit 翻译过程界面

第八步:保存 消息目录文档

还记得前面提到的 $domain 吗?举个例子,我想产生一个中文简体的翻译文件,我将会保存这个文件并以 $domain 作为前缀,然后语言和地区代码作为后缀。在这里,$domain 是 random_Posts 并且语言和地区代码是 zh_CN。所以文件名应该为: random_Posts-zh_CN。

通过保存新文件,我将自动生成一个可以让别人使用的 .po的文件,和一个可以被 WordPress 直接读取来本地化插件的 .mo 文件。

现在如果用户已经在他们的 wp-config.php 文件中设置了适当的 WPLANG 的值,他们插件的选项和输出的文本将会使他们当地的语言。

分享到
作者:
该日志由 Admin 于2012年04月30日发表在开源系统分类下, 通告目前不可用,你可以至底部留下评论。
转载请注明: 使用PoEdit 翻译 WordPress 插件
关键字: , ,
【上一篇】
【下一篇】

您可能感兴趣的文章:

发表评论

[请申请gravatar头像,木有头像的评论可能不会被回复|头像相关帮助]

插入图片