我正在尝试使用Twh i18n Extension。
据我所知,我需要的文件在这里:
https://github.com/fabpot/Twig-extensions/blob/master/lib/Twig/Extensions/Extension/I18n.php
现在我不太确定在哪里保存这个文件
我在名为includes / lib(/ includes / lib / Twig)的文件夹中有Twig。我在Twig下看到一个文件夹Extension。我把它保存在这里吗?
保存后,我是否需要对文件执行“require_once”,或者Twig_Autoloader会为我做这个工作吗?
我没有使用Symfony2
由于 克雷格
答案 0 :(得分:4)
以下是对我有用的完整答案:
在配置文件中添加以下内容:
// Set language to German
putenv('LC_ALL=de_DE');
setlocale(LC_ALL, 'de_DE');
// Specify location of translation tables
bindtextdomain("project_de_DE", "./locale");
// Choose domain
textdomain("projectl_de_DE");
注册Twig Extension
$twig->addExtension(new Twig_Extensions_Extension_I18n());
创建目录locale / de_DE / LC_MESSAGES
使用
将翻译添加到Twig-Template中的相应位置{% trans 'Text in the original language' %}`
答案 1 :(得分:0)
您需要使用Twig注册此扩展程序:
$twig->addExtension(new Twig_Extensions_Extension_I18n());
如果您的安装配置正确,自动装带器应该完成包含该文件的工作。如果没有,您可以手动包含该文件或使用composer进行安装。
答案 2 :(得分:0)
似乎"正确"没有Composer安装这些扩展的方法如下:
lib/
目录的内容复制到项目.../Twig/Extensions/Autoloader.php
Twig_Extensions_Autoloader::register();