Smarty3 Module for Kohana
This is a module for the Kohana PHP framework that
integrates the Smarty Template Engine., (*1)
Documentation and support for this module can be found on
Github.
Note this version is compatible with Kohana 3.3. For Kohana 3.0-3.2 you want the
1.x branch., (*2)
Version 2.0.3-dev, (*3)
Quick Start
- Download and unpack the module
- Put the smarty3 module in your modules directory
- Enable the smarty3 module in your bootstrap file
- To use Smarty for a view you need to create a Smarty template
template_name.tpl in your application's views directory. Then when you do
$view = View::factory('template_name.tpl') you can use the $view object
just as you would with a regular PHP view.
- That's all there is to it! There's only one hitch, you can't use
$view = new View('template_name.tpl') or change the template of an existing
PHP view object to a Smarty template with $view->set_filename().
- If your controller extends the
Controller_Template class, you can use a
Smarty template for your page layout too - just set
public $template = 'layout_template_name.tpl'; in your controller class.
Upgrading from earlier Version 2 releases
- Download and unpack the module
- Replace the existing smarty3 module with the new version
- Delete compiled templates (in
APPPATH/cache/smarty_compiled by default)
Upgrading from older versions
Upgrading from older versions should work as above., (*4)
How does this magic work?
The Smarty module creates a View class that extends Kohana_View to intercept
the View::factory() method and return an instance of either the unmodified
Kohana_View for a PHP template or an instance of Smarty_View if the view file
has the .tpl extension. Smarty_View implements the methods of Kohana_View to
act on a Smarty object. If you are converting existing code, or just prefer to
use the Smarty object directly, you can access it with $view->smarty(), but
note that not all of the available methods have been tested and may produce
unpredicatable effects., (*5)
Documentation and support for this module can be found on
Github.
Support for Smarty and its standard plugins is of course on the
Smarty site., (*6)
Copyright
Licence
This distribution of the Smarty3 Module for Kohana is released under the
Kohana License, (*7)
The distribution of Smarty included in this package is released under the
GNU Lesser General Public License (LGPL) - see the Smarty documentation for
more details., (*8)