piotr-cz / twig-extensions-joomla
Twig - Joomla 框架语言桥接器
v1.1.1
2014-04-26 15:29 UTC
Requires
- php: >=5.3.0
- joomla/language: ~1.1
- twig/twig: ~1.0
This package is not auto-updated.
Last update: 2024-09-14 16:08:24 UTC
README
扩展提供过滤器,允许在 Joomla-Framework 包(如 语言包)中,在 Twig 模板中使用。
安装
将 "piotr-cz/twig-extensions-joomla": "~1.0"
添加到 composer.json 中的 require 块,然后运行 composer install
。
{ "require": { "piotr-cz/twig-extensions-joomla": "~1.0" } }
文本扩展
假设您将使用 Composer 来处理自动加载。
设置
将扩展添加到 Twig 环境中
// Configure Twig $loader = new \Twig_Loader_Filesystem(JPATH_TEMPLATES); $twig = new \Twig_Environment($loader, $options = array()); // Register Extension $twig->addExtension(new \TwigJoomla\Extension\TextExtension); // Render Template $template = $twig->loadTemplate('test.twig'); echo $template->render();
用法
扩展能够调用 Text 的任何公共方法(如 Text::_()
、Text::sprintf()
等)。
接受参数
$method
Text 方法- Text 参数
_
方法(默认)
Twig 模板
{{ "IMADEIT" | jtext }}
语言文件
IMADEIT = "I made it!"
结果
I made it!
sprintf
方法
Twig 模板
{{ "HELLOW" | jtext('sprintf', 'World') }}
语言文件
HELLOW ="Hello %s!"
结果
Hello World!
日期扩展
此扩展允许使用本地化的日期输出,而不是使用 PHP intl 扩展,而是使用 语言包。从 JDate 包 导入关键函数。
设置
$twig->addExtension(new \Twigoomla\Extension\DateExtension($config->get('timezone')));
用法
接受参数
$format
DateTime 格式$timezone
字符串或 DateTimeZone 对象(可选)
Twig 模板
{{ event.on | jdate('l, j. F Y') }}
语言文件
SUNDAY ="neděle" JUNE ="červen"
结果
neděle, 1. červen 2014
应用程序设置
有关如何在您的应用程序中设置 Language
包的说明,请参阅 Joomla-Framework/Language 包。
运行测试
$ composer install $ phpunit
许可协议
这些扩展在 MIT 许可协议下发布,除了日期扩展,它在 GPL2 许可协议下发布。