Poedit格式错误: ‘msgstr’ is not a valid PHP format string

最近用Poedit来汉化一款WordPress主题的,在保存时出现“msgfmt:found 1 fatal error”,msgfmt出现一个致命错误,错误日志为:

‘msgstr’ is not a valid PHP format string, unlike ‘msgid’. Reason: The character that terminates the directive number 1 is not a valid conversion specifier.

貌似是msgstr中有错误的字符串。

用EditPlus打开zh_CN.po,查看错误行:

#: index.php:25

#, php-format

msgid “% comments”

msgstr “% 条评论”

貌似是百分号的问题?Google搜索半天只有英文资料,说这是Poedit的bug,可以忽略。

随后看了下WordPress官方主题文件类似的地方,发现:所有百分号后面的单词都是大写开头,msgid “% Comments”,改正以后问题就解决了。至于是什么原因,不得而知。

关于Poedit:

Poedit是一款.po文件编辑器,PO即Portable Object,支持多平台,主要用来创建国际化版本。

用Poedit汉化WordPress主题或者插件,相比直接修改主题源代码的方法,Poedit可以非常方便的生成相应的.po和.mo文件,对以后增加其他国际化语言非常方便。最新的Poedit为Version 1.4.6 released。

WordPress主题汉化,poedit,msgfmt

» 链接地址:https://wubangtu.com/1050 »英雄不问来路,转载请注明出处。

Poedit格式错误: ‘msgstr’ is not a valid PHP format string》上有 7 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。