elquimista / cakephp-jade

🍰 Jade Template Engine Plugin for CakePHP 3, powered by Tale Jade for PHP
0 stars 0 forks source link
cakephp cakephp-plugin jade tale-jade

Build Status Latest Stable Version Total Downloads License

Jade Template Engine Plugin for CakePHP 3

Powered by Tale Jade for PHP.

Installation

  1. Download Composer or update composer self-update.
  2. Run php composer.phar require clthck/cakephp-jade.

If Composer is installed globally, run

composer require clthck/cakephp-jade

Bootstrap

Add the following to your config/bootstrap.php to load the plugin.

Plugin::load('JadeView');

Application Wide Usage

Place the following to your AppController.php to load the JadeView class.

public function initialize()
{
    parent::initialize();

    $this->viewBuilder()
        ->className('JadeView.Jade')
        ->options(['pretty' => false]);
}

What if we need to load additional helpers for our JadeView instance? In this case, we can make AppView class inherit JadeView class:

...
use JadeView\View\JadeView;
...
class AppView extends JadeView
{
    ...
    public function initialize()
    {
        $this->viewOptions([
            'pretty' => true
        ]);

        parent::initialize();

        $this->loadHelper('Form', [
            'templates' => 'form_template'
        ]);
    }
}

In Template File (.ctp.jade)

Use $view instead of $this.

= $view->Flash->render()

Usage Example of CakePHP javascript block

- $view->Html->scriptStart(['block' => true])
|
    $(function() {
        // Your js code goes here..
    });

- $view->Html->scriptEnd()

If you're using Sublime Text 2/3, you need to install cakephp-jade-tmbundle to make syntax highlighting work properly.

Language Syntax Reference

Please check jade.talesoft.io for syntax reference.