- PHP 5.4+
- nette/nette >= 2.1
- Copy source codes from Github or using Composer:
$ composer require dotblue/nette-templating@~1.0- Register as Configurator's extension:
extensions:
templateHelpers: DotBlue\Templating\Helpers\Extension
- Register your helpers:
templateHelpers:
- ShoutHelper
use DotBlue\Templating\Helpers;
class ShoutHelper implements Helpers\IHelper
{
public function getName()
{
return 'shout';
}
public function execute($value, Helpers\Options $options)
{
return $value . '!';
}
}All arguments are wrapped in Options object.
public function execute($value, Helpers\Options $options)
{
$mark = $options->first('!');
return $value . $mark;
}{var $text = 'Hi'}
{$text|shout:'!!!'} {* print "Hi!!!" *}You can use new macro {locale $language /} in your templates (best place is your layout). Provided $language variable is then available in helper via Options object:
$language = $options->getLocale();$language can be anything you wish. You can also place {locale} macro in template multiple times, for example to print amount of money in all localized versions (using hypothetical currency helper):
{foreach $languages as $language}
{locale $language}
{$money|currency}
{/locale}
{/foreach}