2017 © Pedro Peláez
 

kohana-module kohana-twig

Kohana 3.3 module for the popular Twig template engine

image

tommcdo/kohana-twig

Kohana 3.3 module for the popular Twig template engine

  • Tuesday, May 8, 2018
  • by paquettg
  • Repository
  • 5 Watchers
  • 25 Stars
  • 1,610 Installations
  • PHP
  • 1 Dependents
  • 1 Suggesters
  • 16 Forks
  • 2 Open issues
  • 3 Versions
  • 1 % Grown

The README.md

kohana-twig Composer

Version 1.0.1, (*1)

Build Status, (*2)

Kohana-twig is a Kohana 3.3 module for the popular Twig template engine. It was designed to offer the full capabilities of Twig with a strong focus on operating within the guidelines and best practices of the Kohana framework. This module provides a way to use Twigs exactly as Kohana Views are used, and it uses a custom Twig Loader to locate Twig template files in the Cascading Filesystem., (*3)

Looking for a Koseven module?

Take a look at koseven-twig by errotan., (*4)

Installation

First, add the package to your composer.json requirements:, (*5)

"tommcdo/twig"  : "1.0.*"

Then, install using composer php composer.phar update, (*6)

Then, enable the module in APPPATH/bootstrap.php by adding it to the modules initialization:, (*7)

Kohana::modules(array(
    // ... all your other modules ...
    'twig'       => MODPATH.'kohana-twig',       // Twig templating engine
));

This module was designed for Kohana 3.3, but can be easily made to work with Kohana 3.2 by changing all filenames within the classes/ directory to lowercase., (*8)

Usage

Use Twigs just as you use would use Kohana Views. By default, your Twig files go into the twigs directory anywhere in the cascading filesystem, and have a .html extension. (Both of these settings can be configured.) For example, suppose you have a Twig file at APPPATH/twigs/main.html, with contents:, (*9)

<p>Hello, {{ name }}</p>

Inside your action, you would attach the Twig as follows:, (*10)

$twig = Twig::factory('main');
$twig->name = 'Tom';
$this->response->body($twig);

Your Twig files can also reference other templates by name, which will be located using the cascading filesystem. Note that the extension of the twig file is omitted; in the following Twig template example, a file called template.html would be located in the cascading filesystem:, (*11)

{% extends "template" %}

For more information on Twig templates, see Twig for Template Designers, (*12)

Configuration

Default configuration is kept in MODPATH/twig/config/twig.php. To override it, you can create a config file at APPPATH/config/twig.php (or in the config/ directory of any module that gets loaded before this one) that specifies values to any options you'd like to change., (*13)

Extending

Twig offers many ways to extend the base templating environment. In kohana-twig, this can be achieved by overriding the static Twig::env() method. To do so, you can define the class APPPATH/classes/Twig.php as follows:, (*14)

class Twig extends Kohana_Twig {

    protected static function env()
    {
        // Instantiate the base Twig environment from parent class.
        $env = parent::env();

        // Customize as needed.
        $env->addExtension(new Twig_Extension_Example);
        // ... do more stuff if you'd like ...

        return $env;
    }

} // End Twig

Contributing

Contributions are always welcome and appreciated. Since this is a Kohana module, the main thing I ask is that the code conforms to Kohana's Conventions and Style. If you're not familiar with them, please read them over thoroughly., (*15)

The Versions

08/05 2018

dev-master

9999999-dev https://github.com/tommcdo/kohana-twig

Kohana 3.3 module for the popular Twig template engine

  Sources   Download

MIT

The Requires

 

The Development Requires

templating twig kohana

17/09 2014

1.0.1

1.0.1.0 https://github.com/tommcdo/kohana-twig

Kohana 3.3 module for the popular Twig template engine

  Sources   Download

MIT

The Requires

 

The Development Requires

templating twig kohana

16/09 2014

1.0.0

1.0.0.0 https://github.com/tommcdo/kohana-twig

Kohana 3.3 module for the popular Twig template engine

  Sources   Download

MIT

The Requires

 

The Development Requires

templating twig kohana