Skip to content
This repository was archived by the owner on Oct 29, 2024. It is now read-only.

Bundle to integrate Handlebars templates into your Symfony2 / Symfony3 application

License

Notifications You must be signed in to change notification settings

smartive/SmartiveHandlebarsBundle

Repository files navigation

SmartiveHandlebarsBundle

Bundle to integrate Handlebars templates into your Symfony2 application

Installation

Require the smartive/handlebars-bundle package in your composer.json and update your dependencies.

{
    // ...
    "require": {
        "smartive/handlebars-bundle": "dev-master"
    }
    // ..
}

Register the bundle and in app/AppKernel.php:

// app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new Smartive\HandlebarsBundle\SmartiveHandlebarsBundle(),
    );
}

Configuration

Some of the features can be configured in the smartive_handlebars section of app/config/config.yml.

Handlebars file extension

The default file extension for Handlebars files is set to .hbs. This can be overridden using the following setting (example file extension set to .handlebars):

smartive_handlebars:
    templating:
        file_extension: .handlebars

Template directories

The template_directories setting lets you define where to look for Handlebars templates. You can use Symfony resource notation as well as absolute file paths to configure directories.

smartive_handlebars:
    templating:
        template_directories:
            - @AcmeDemo/Resources/views/Templates/
            - /var/www/templates

By default, templates are getting search for in template directories recursively. You can disable this behaviour as follows:

smartive_handlebars:
    templating:
        template_directories_recursive: false

Twig extension

The Handlebars Twig extension is enabled by default. To disable it add this to your configuration:

smartive_handlebars:
    twig:
        enabled: false

Usage

Rendering service

The smartive_handlebars.templating.renderer service offers a render($templateName, $data) method which can be use to render Handlebars templates.

Twig

To render Handlebars templates in Twig you can use the Twig function handlebars(templateName, data).

About

Bundle to integrate Handlebars templates into your Symfony2 / Symfony3 application

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5