Skip to content

🍰 Pug Template Engine Plugin for CakePHP 3, powered by Tale Jade for PHP

Notifications You must be signed in to change notification settings

elquimista/cakephp-pug

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

🍰 Pug Template Engine Plugin for CakePHP 3, powered by Tale Jade for PHP

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages