Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 1,000,000+ packages pre-installed, including eleventy-xml-plugin with all npm packages installed. Try it out:

var eleventyXmlPlugin = require("eleventy-xml-plugin")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

eleventy-xml-plugin v0.1.0

Useful set of Liquid filters for XML files composition in Eleventy projects

eleventy-xml-plugin

Build Status

👩‍🔬 Useful set of Liquid filters for XML files composition in Eleventy projects.

This plugins automatically adds a set of filters that Jekyll adds to the already built-in ones in Liquid template language to help you compose XML files like RSS feeds or sitemaps.

Install

# npm
npm i eleventy-xml-plugin --save

# yarn
yarn add eleventy-xml-plugin

Add plugin

Include it as a plugin in your Eleventy project.

// .eleventy.js
const xmlFiltersPlugin = require('eleventy-xml-plugin')

module.exports = function(eleventyConfig) {
  eleventyConfig.addPlugin(xmlFiltersPlugin)
}

Filters

date_to_rfc822

Used in RSS feed as a valid publish date format.

<pubDate>{{ post.date | 'date_to_rfc822' }}</pubDate>

date_to_xmlschema

Used in sitemaps as valid last modified date format.

<lastmod>{{ page.date | 'date_to_xmlschema' }}</lastmod>

xml_escape

Used to safely escape HTML entities in XML files.

<title>{{ post.data.title | 'xml_escape' }}</title>

This filter uses the html-entities package under-the-hood.

Contributing

To contribute Node.js and yarn are required.

Before commit make sure to follow conventional commits specification and check all tests pass by running yarn test.

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free