2013-07-06 19:36:30 -04:00
|
|
|
---
|
2014-05-29 18:42:05 -04:00
|
|
|
aliases:
|
|
|
|
- /doc/variables/
|
|
|
|
- /layout/variables/
|
|
|
|
date: 2013-07-01
|
|
|
|
linktitle: Variables
|
2014-04-23 03:00:11 -04:00
|
|
|
menu:
|
|
|
|
main:
|
2014-05-29 18:42:05 -04:00
|
|
|
parent: layout
|
|
|
|
next: /templates/content
|
|
|
|
prev: /templates/functions
|
|
|
|
title: Template Variables
|
|
|
|
weight: 20
|
2013-07-08 17:57:01 -04:00
|
|
|
---
|
2013-07-04 11:32:55 -04:00
|
|
|
|
|
|
|
Hugo makes a set of values available to the templates. Go templates are context based. The following
|
|
|
|
are available in the context for the templates.
|
|
|
|
|
2013-08-17 08:34:25 -04:00
|
|
|
## Page Variables
|
|
|
|
|
2014-01-21 20:05:26 -05:00
|
|
|
The following is a list of most of the accessible variables which can be
|
|
|
|
defined for a piece of content. Many of these will be defined in the front
|
|
|
|
matter, content or derived from file location.
|
|
|
|
|
2013-08-08 19:13:03 -04:00
|
|
|
**.Title** The title for the content.<br>
|
2014-01-21 20:05:26 -05:00
|
|
|
**.Content** The content itself, defined below the front matter.<br>
|
|
|
|
**.Summary** A generated summary of the content for easily showing a snippet in a summary view.<br>
|
2013-07-04 11:32:55 -04:00
|
|
|
**.Description** The description for the content.<br>
|
|
|
|
**.Keywords** The meta keywords for this content.<br>
|
2014-05-29 01:00:06 -04:00
|
|
|
**.Date** The date the content is associated with.<br>
|
|
|
|
**.PublishDate** The date the content is published on.<br>
|
2014-01-21 20:05:26 -05:00
|
|
|
**.Type** The content [type](/content/types/) (eg. post)<br>
|
|
|
|
**.Section** The [section](/content/sections/) this content belongs to<br>
|
2013-07-04 11:32:55 -04:00
|
|
|
**.Permalink** The Permanent link for this page.<br>
|
2013-10-25 18:37:53 -04:00
|
|
|
**.RelPermalink** The Relative permanent link for this page.<br>
|
|
|
|
**.LinkTitle** Access when creating links to this content. Will use linktitle if set in front-matter, else title<br>
|
2014-01-21 20:05:26 -05:00
|
|
|
**.Indexes** These will use the field name of the plural form of the index (see tags and categories above)<br>
|
2013-07-04 11:32:55 -04:00
|
|
|
**.RSSLink** Link to the indexes' rss link <br>
|
2014-02-20 19:05:09 -05:00
|
|
|
**.TableOfContents** The rendered table of contents for this content<br>
|
2013-08-03 03:30:34 -04:00
|
|
|
**.Prev** Pointer to the previous content (based on pub date)<br>
|
|
|
|
**.Next** Pointer to the following content (based on pub date)<br>
|
2014-01-21 20:05:26 -05:00
|
|
|
**.FuzzyWordCount** The approximate number of words in the content.<br>
|
|
|
|
**.WordCount** The number of words in the content.<br>
|
|
|
|
**.ReadingTime** The estimated time it takes to read the content in minutes.<br>
|
|
|
|
**.Weight** Assigned weight (in the front matter) to this content, used in sorting.<br>
|
2014-08-19 21:27:13 -04:00
|
|
|
**.IsNode** Always false for pages.<br>
|
|
|
|
**.IsPage** Always true for page.<br>
|
2013-08-17 08:34:25 -04:00
|
|
|
**.Site** See site variables below<br>
|
2013-07-04 11:32:55 -04:00
|
|
|
|
2014-01-21 20:05:26 -05:00
|
|
|
## Page Params
|
|
|
|
|
|
|
|
Any other value defined in the front matter, including indexes will be made available under `.Params`.
|
2013-07-04 11:32:55 -04:00
|
|
|
Take for example I'm using tags and categories as my indexes. The following would be how I would access them:
|
|
|
|
|
2014-01-21 20:05:26 -05:00
|
|
|
**.Params.tags** <br>
|
|
|
|
**.Params.categories** <br>
|
|
|
|
<br>
|
|
|
|
**All Params are only accessible using all lowercase characters**<br>
|
2013-08-17 08:34:25 -04:00
|
|
|
|
|
|
|
## Node Variables
|
|
|
|
In Hugo a node is any page not rendered directly by a content file. This
|
|
|
|
includes indexes, lists and the homepage.
|
|
|
|
|
|
|
|
**.Title** The title for the content.<br>
|
|
|
|
**.Date** The date the content is published on.<br>
|
|
|
|
**.Permalink** The Permanent link for this node<br>
|
|
|
|
**.Url** The relative url for this node.<br>
|
|
|
|
**.RSSLink** Link to the indexes' rss link <br>
|
2014-01-21 20:05:26 -05:00
|
|
|
**.Data** The data specific to this type of node.<br>
|
2014-08-19 21:27:13 -04:00
|
|
|
**.IsNode** Always true for nodes.<br>
|
|
|
|
**.IsPage** Always false for nodes.<br>
|
2013-08-17 08:34:25 -04:00
|
|
|
**.Site** See site variables below<br>
|
|
|
|
|
|
|
|
## Site Variables
|
2013-07-04 11:32:55 -04:00
|
|
|
|
|
|
|
Also available is `.Site` which has the following:
|
|
|
|
|
|
|
|
**.Site.BaseUrl** The base URL for the site as defined in the config.json file.<br>
|
2013-10-25 18:37:53 -04:00
|
|
|
**.Site.Indexes** The indexes for the entire site.<br>
|
2013-07-04 11:32:55 -04:00
|
|
|
**.Site.LastChange** The date of the last change of the most recent content.<br>
|
2013-11-18 18:31:02 -05:00
|
|
|
**.Site.Recent** Array of all content ordered by Date, newest first.<br>
|
|
|
|
**.Site.Params** A container holding the values from `params` in your site configuration file.<br>
|