如何从Wordpress插件PHP文件自动生成POT文件?

问题描述 投票:1回答:1

我正在研究一个Wordpress插件,并注意到主要的PHP文件 - 让我们称之为blah.php - 包含如下调用:

100: <?php _e('Foo', 'blah'); ?>
101: <?php _e('Bar', 'blah'); ?>
...

它伴随着一个语言子文件夹中的blah.pot文件,其代码如下:

#: blah.php:100
msgid "Foo"
msgstr ""

#: blah.php:101
msgid "Bar"
msgstr ""

假设我想在PHP中添加一段新的文本,在上面两段之间:

100: <?php _e('Foo', 'blah'); ?>
101: <?php _e('Baz', 'blah'); ?> <!-- New -->
102: <?php _e('Bar', 'blah'); ?>
...

难道这不意味着我必须重新编号blah.pot,就像这样吗?

#: blah.php:100
msgid "Foo"
msgstr ""

#: blah.php:101
- msgid "Bar"
+ msgid "Baz"
msgstr ""

+ #: blah.php:102
+ msgid "Bar"
+ msgid "Bar"
+ msgstr ""

如果有数百个这样的物品怎么办?这不是很费时间吗?

有没有更快的方法,例如,从PHP自动生成pot文件,具有正确的行号?

php wordpress translation pot
1个回答
1
投票

通常,POT(可移植对象模板,.pot)文件由诸如PoeditEasy Po或类似程序的gettext目录编辑器编辑。文件本身充当需要翻译的模板,并且通常由相同的gettext程序通过扫描PHP文件和查找gettext函数生成,或者可以由另一个插件生成(例如WPML将生成这些文件)。

我不知道在PHP独立中这样做的方法。我建议尝试翻译程序,看看哪种方式最适合你。我过去曾经成功使用过Poedit。这是免费的。

查看official Localization documentation以获取有关这些gettext文件如何协同工作以创建翻译的其他信息。

© www.soinside.com 2019 - 2024. All rights reserved.