11ty

Eleventy Documentation

Documentation Pages

Using Data

Data can be used on a template from multiple different sources.

Sources of Data

The order of priority for sources of data is (from highest priority to lowest):

  1. Front Matter Data in a Template
  2. Front Matter Data in Layouts
  3. Template Data Files
  4. Directory Data Files (and ascending Parent Directories)
  5. Global Data Files

Eleventy Provided Data Variables

Here are a few data values we supply to your page that you can use in your templates:

page Variable Contents:

let page = {

// URL can be used in <a href> to link to other templates
url: "/current/page/myFile/",

// New in Eleventy v0.3.4
// Mapped from inputPath, useful for permalinks
fileSlug: "myFile",

// JS Date Object for current page (used to sort collections)
date: new Date(),

// The path to the original source file for the template
// Note: this will include your input directory path!
inputPath: "./current/page/myFile.md",

// Eleventy internals
// You probably won’t use `outputPath`: `url` is more useful.
// Depends on your output directory (the default is _site)
outputPath: "./_site/current/page/myFile/index.html"
};

fileSlug

New in v0.3.4 The fileSlug variable is mapped from inputPath and is useful for creating your own clean permalinks.

inputPathResulting fileSlug
"2018-01-01-myFile.md""myFile"
"myDir/myFile.md""myFile"

fileSlug returns information on the parent directory if the file is an index template:

inputPathResulting fileSlug
"index.md""" (empty)
"myDir/index.md""myDir"
"myDir/2018-01-01-index.md""myDir"

date

The date associated with the page. Defaults to the content’s file created date but can be overridden. Read more at Content Dates.