MaxnufSmarty is a module that integrates the Smarty templating engine with Zend Framework 2.
"maxnuf/maxnuf-smarty": "dev-master"
to your composer.json
file and run php composer.phar update
.MaxnufSmarty
to your config/application.config.php
file under the modules
key.configuration can be set via the maxnufsmarty
configuration key.
'maxnufsmarty' => array(
'config' => array(
'compile_dir' => __DIR__ . '/../../data/Smarty/smarty_compile/',
'cache_dir' => __DIR__ . '/../../data/Smarty/smarty_cache/',
),
),
MaxnufSmarty integrates with the View Manager service and uses the same resolvers defined within that service.
For the template_map
it looks for files with suffix defined in config, default is .tpl
.
This allows you to define the template path stacks and maps within the view manager without having to set them again
when installing the module:
'view_manager' => array(
'template_path_stack' => array(
'application' => __DIR__ . '/../templates',
),
'template_map' => array(
'layouts/layout' => __DIR__ . '/../templates/layouts/layout.tpl',
'index/index' => __DIR__ . '/../templates/application/index/index.tpl',
),
),
Support is added for Zend View helpers as functions and modifiers
Where appropriate Zend View helpers can be invoked as function or modifiers
{$form->get('title')|formLabel}
{$form->get('title')|formInput}
{url name="blog/view" params=['id'=>$item->id, 'title'=>$item->title]}
Zend View helpers can also be invoked using $this
{$this->formInput($form->get('title'))}
{$this->headTitle()->setSeperator(' - ')}
The smarty modifier cat
can be used to concatenate two variables
{$this->headLink()->prependStylesheet($this->basePath()|cat:'/mystyle.css')}