Skip to content
Localizable templates with smooth setup in Nette Framework
PHP
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Helpers
composer.json
license.md
readme.md

readme.md

Localizable templates with smooth setup in Nette Framework

Requirements

Installation

  1. Copy source codes from Github or using Composer:
$ composer require dotblue/nette-templating@~1.0
  1. Register as Configurator's extension:
extensions:
    templateHelpers: DotBlue\Templating\Helpers\Extension
  1. Register your helpers:
templateHelpers:
    - ShoutHelper

How should MyHelper look?

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!!!" *}

Localization

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}
You can’t perform that action at this time.