在wordpress本地化翻译中添加一个新的英语句子


Adding a new english sentence to wordpress localisation translation

我开始开发wordpress插件,试图扩展现有的插件。

这个插件有一个语言文件夹,里面有一个法语和印度语的.po和.mo文件。插件代码中有如下引用:

<?php _e("Start Date", "pluginxyz"); ?>

我想添加:

<?php _e("Length of Class Block", "pluginxyz"); ?>

我不完全确定我需要做什么才能使这项工作成功。我的插件页面抛出错误:

Failed to load resource: net::ERR_CACHE_MISS http://127.0.0.1:8080/wordpress/wp-admin/admin.php?page=classes

我认为这是因为在e()正在查找的文件中找不到"类块长度"文本。我安装了一个插件来帮助本地化:https://wordpress.org/plugins/codestyling-localization/我已经使用这个工具重新扫描了2.po文件,但我不知道在哪里或如何将"类块长度"作为英语语句添加到我的插件中!

有人能解释一下并帮忙吗!

为了进一步开发,您可以选择

1解析英文定义的PO文件,并根据数据或生成PO文件

2:将代码源"翻译"成一个单独的en_US.po。通过使用这种方法,插件更开放,可供使用另一种母语的开发人员进一步开发。

编辑:如果你正在寻找一个工具来编辑PO/MO文件,我真的推荐POEdit,当我需要把一些东西翻译成挪威语时,我总是使用它。

我最终弄明白了。长期的答案是安装和设置grunt-pot,它会扫描我的项目,在PHP中查找对_e()调用等的引用,并将它们提取到pot文件中。这个pot文件可以用来生成.po文件,这些文件是文本的翻译版本,然后将其编译成二进制.mo文件。

然后我发现了另一件事——那就是,如果_e()在本地化中找不到引用,它无论如何都会继续吐出那个字符串——所以现在,我要做的是,将来我可以使用grunt pot创建一个pot文件,为我的用户创建一个可分发的po和mo文件,以便拥有本地化的插件。