clthck/cakephp-pug

Pug Template Engine Plugin for CakePHP 3

Installs: 23

Dependents: 0

Suggesters: 0

Security: 0

Stars: 6

Watchers: 2

Forks: 1

Type:cakephp-plugin

v1.0.1 2017-02-24 06:44 UTC

This package is not auto-updated.

Last update: 2024-11-09 20:56:23 UTC


README

Build Status Latest Stable Version Total Downloads License

Pug Template Engine Plugin for CakePHP 3

Powered by Tale Pug for PHP.

Installation

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

If Composer is installed globally, run

composer require clthck/cakephp-pug

Bootstrap

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

Plugin::load('PugView');

Application Wide Usage

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

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

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

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

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

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

In Template File (.ctp.pug)

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.codes for syntax reference.