2

如何在我的.tpl文件中使用 translate 块,以便 cakephp 的提取命令能够理解它?

我想翻译我的 CakePHP Web 应用程序。我正在使用TwigView 插件。TwigView 有 i18n 提取命令来生成 POT 文件。我的问题是为什么它不会扫描.tpl{% trans %} Hello {% endtrans %}块的(Twig File)。

您可以在TwigView的自述文件中看到翻译功能。

4

1 回答 1

2

我没有使用 cakePHP 的经验,但就生成 POT 文件而言,cakePHP 不需要扫描 .tpl 文件。

Twig 引擎有一个编译器,它基本上将每个 twig 视图“转换”为 PHP 脚本,该脚本保存在 Twig 缓存文件夹中。至少,如果配置正确,应该会发生这种情况。这些缓存文件将包含可以识别的常规 gettext 函数。

您必须确保在扫描缓存之前正确编译每个视图。此脚本将允许您为所有视图生成树枝缓存。之后,您可以扫描生成的 PHP 文件。 http://twig.sensiolabs.org/doc/extensions/i18n.html#extracting-template-strings

我不确定您为什么使用 cakePHP 生成 POT 文件,但 POEDIT(它又使用命令行工具 xgettext)肯定会以这种方式工作。

于 2013-07-23T22:05:09.847 回答