GkSmarty is a module for integrating the Smarty template engine with Zend Framework 2.
Installing via Composer is the only supported method.
- Add
"gkralik/gk-smarty": "~1.0"
to yourcomposer.json
file and runphp composer.phar update
. - Add
GkSmarty
to your application'sconfig/application.config.php
file under themodules
key.
For information on configuring GkSmarty, refer to the module config file.
There is also a sample configuration file with all available configuration options.
You can set options for the Smarty engine under the smarty_options
configuration key (eg force_compile
, etc).
Pay attention to the compile_dir
and cache_dir
keys. Smarty needs write access to the directories specified there.
Using view helpers of ZF2 is supported. Just call the view helper as you would do in a PHTML template:
{$this->docType()}
{$this->basePath('some/path')}
ZF2 has some issues with supporting multiple renderers with view helpers.
GkSmarty uses it's own HelperPluginManager
to work around this issue.
The default plugin manager from ZF2 is added as a peering manager to ease using view helpers that do not required access to the renderer.
This means
You must register view helpers that require a renderer with GkSmarty's helper manager. Refer to module.config.php
for an example.
Some defaults have been taken care of for you (see HelperPluginManager for details).
Thanks to ZfcTwig for an excellent example on how to integrate templating engines with ZF2 and for finding a workaround for view helpers that need access to the renderer (see above).