Skip to content

web-alchemy/eleventy-plugin-twig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Eleventy Plugin for Twig

This plugin adds support for Twig.js template engine.

Installation

npm install @web-alchemy/eleventy-plugin-twig 

Using

const TwigPlugin = require('@web-alchemy/eleventy-plugin-twig')

module.exports = function (eleventyConfig) {
  eleventyConfig.addPlugin(TwigPlugin, {
    // here you can extend Twig (add your own filter, functions, tags, etc.).
    // https://github.com/twigjs/twig.js/wiki/Extending-twig.js
    // https://github.com/twigjs/twig.js/wiki/Extending-twig.js-With-Custom-Tags
    init: async function (Twig) {
      Twig.cache(false)
    },

    twigOptions: {
      strictVariables: true,
      autoescape: true,
      allowInlineIncludes: true,
      // https://github.com/twigjs/twig.js/wiki#namespaces
      namespaces: {
        includes: 'src/_includes',
        layouts: 'src/_layouts',
      }
    },
    
    // here you can set a condition for skipping the template rendering
    skipRenderCondition: async function (inputContent, inputPath, config) {
      return false // function should return `true` for skipping
    },
  })
}

References