Download the PHP package rareloop/primer-template-engine-twig without Composer
On this page you can find all versions of the php package rareloop/primer-template-engine-twig. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rareloop/primer-template-engine-twig
More information about rareloop/primer-template-engine-twig
Files in rareloop/primer-template-engine-twig
Package primer-template-engine-twig
Short Description Twig template engine for Primer
License MIT
Informations about the package primer-template-engine-twig
Twig Template Engine for Primer
A template engine for Primer that uses Twig rather than the deafult (Handlebars).
Installation
-
In the
composer.json
in your Primer install, replace:`
with:
`
-
Run
composer update
. -
Modify your
bootstrap/start.php
file and change thePrimer::start
call to include thetemplateClass
e.g.``
- Replace all
.hbs
files in your patterns and views with `.twig' files. If you don't want to do this by hand you can download the base Primer files in Twig format from this repo.
Usage
Including patterns within one another
Any pattern can be included within another by using the standard include
syntax, e.g.
`
More information on using {% include %}
and manipulating the passed in context can be found on the Twig website.
Extending Templates
By default, Primer will wrap all page Templates with a common View (views/template.twig
). When using {% extends %}
this wrapping is sometimes undesirable, in such circumstances you can disable this behaviour in a couple of ways.
-
On a per page Template basis. Add the following to the Templates
data.json
file: - Site wide. Add
wrapTemplate: false
to thePrimer::start
call inbootstrap/start.php
, e.g.
Twig Template Cache
By default Primer uses a directory called cache
inside the project root for cache files. To change this to somewhere else you can set an alternative when you start Primer in bootstrap/start.php
, e.g.
``
Custom Events
Most of the Primer events are still available, this package adds a few engine specific events too:
-
Twig Engine Initialisation
Called when the Twig engine is created. Useful for registering custom helpers with the Twig engine.
``