- 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}