wearewondrous / fractal-twig-drupal-adapter

Twig template adapter for Fractal with Drupal 8 directives.
http://fractal.build
MIT License
13 stars 13 forks source link
drupal drupal-8 fractal twig

Twig Adapter

An adapter to let you use Twig templates with Fractal.

Installation

$ npm install --save @wearewondrous/fractal-twig-drupal-adapter

in your fractal.js

const fractal = require('@frctl/fractal').create();
const twigAdapter = require('@wearewondrous/fractal-twig-drupal-adapter');
const twig = twigAdapter({
  handlePrefix: '@components/',
});

fractal.components.engine(twig);
fractal.components.set('ext', '.twig'); 

Usage

This adapter allows you to use some Drupal filters, functions and tags.

Supported Filters

|t - The Drupal core translation filter. Additional parameters not supported, yet.

|field_value - Provided by the module drupal/twig_field_value to use plain outputs from a field.

Add Custom Filters

You have the ability to extend Twig with custom filters by adding any filter functions to the twigAdapter configuration. The name of the function will be used as the filter name. For example, to create a |render filter:

const twig = twigAdapter({
  filters: {
    render(str) {
      return str;
    }
  }
});

Supported Functions

path() - The Drupal core path function.

url() - The Drupal core url function.

block_view() - Provided by the module drupal/twig_extender to directly print a block.

Supported tags

{% trans %} - The Drupal core translate tag.

Creator

WONDROUS

MIT License