Installer Twig sur Laravel

Le partage, c’est bien quand c’est utile :

Installer Twig sur Laravel. Ne cherchez plus voici la solution ! Elle est ici avec TwigBridge. En pleine découverte de Laravel, mon objectif est d’installer Twig car depuis la découverte de Twig (au travers de Symfony2) j’éprouve le besoin de l’utiliser partout.

Installation

Ajoutez la ligne `rcrowe\twigbridge` dans votre fichier composer.json comme l’exemple ci-dessous :

{
    "require": {
        "rcrowe/twigbridge": "0.5.*"
    }
}

Mettez à jour vos paquets avec la commande composer update ou en les installant avec composer install.
Une fois que Composer à installé ou mis à jour vos paquets vous devez enregistrer TwigBridge dans Laravel. Pour cela ouvrez votre fichier de configuration app/config/app.php et trouvez le tableau qui vous permet d’enregistrer vos « providers », puis ajoutez cette ligne à la suite : 'TwigBridge\TwigServiceProvider',

<?php 
return array(
  // ...
  
  'providers' => array(
    // ...
    'TwigBridge\TwigServiceProvider',
  )
);

Configuration

Pour pouvoir configurer proprement votre nouveau moteur de template, lancez la ligne de commande suivante : php artisan config:publish rcrowe/twigbridge.

Un nouveau fichier est alors créé dans le dossier app/config/packages/rcrowe/twigbridge/config.php. Enjoy.

Utilisation

Vous appelez le modèle comme vous le feriez pour n’importe quelle vue :

<?php
// Without the file extension
View::make('i_am_twig', array(...));

TwigBridge gère également très bien les vues d’autres paquets :

<?php
View::make('pagination::simple');

Bien entendu les règles continuent lorsque l’on étend un template vers un autre :

{% extend "parent" %}
{% extend "pagination::parent" %}

Commandes

Voici quelques commandes à utiliser avec artisan car TwigBridge propose un certain nombre d’interactions CLI.

Liste Twig et versions de Bridge :
$ php artisan twig

Vider le cache de Twig :
$ php artisan twig:clean

Pré-compiler les templates de Twig :
$ php artisan twig:compile

Vérifiez la syntaxe des templates Twig:
$ php artisan twig:lint

Plus d’informations directement sur la page du paquet TwigBridge.

Le partage, c’est bien quand c’est utile :