Home

Awesome

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.