HUGO
News Docs Themes Community GitHub
Terms commonly used throughout the documentation.

A  B  C  D  E  F  G  H  I  K  L  M  N  O  P  R  S  T  U  V  W  Z 

action

See template action.

archetype

An archetype is a template for new content.

argument

An argument is a scalar, array, slice, map, or object passed to a function, method, or shortcode.

array

An array is a numbered sequence of elements. Unlike Go’s slice data type, an array has a fixed length. Elements within an array can be scalars, slices, maps, pages, or other arrays. See  details.

asset pipeline

An asset pipeline is a system that automates and optimizes the handling of static assets like images, stylesheets, and JavaScript files.

bool

See boolean.

boolean

A boolean is a data type with two possible values, either true or false.

branch bundle

A branch bundle is a top-level content directory or any content directory containing an _index.md file. Analogous to a physical branch, a branch bundle may have descendants including leaf bundles and other branch bundles. A branch bundle may also contain page resources such as images. See  details.

build

To build a site is to generate HTML files and assets such as images, CSS files, and JavaScript files. The build process includes rendering and resource transformations.

bundle

See page bundle.

cache

A cache is a software component that stores data so that future requests for the same data are faster.

chain

To chain is to connect one or more identifiers with a dot. An identifier can represent a method, object, or field. For example, .Site.Params.author.name or .Date.UTC.Hour.

CJK

CJK is a collective term for the Chinese, Japanese, and Korean languages.

CLI

CLI is an abbreviation of Command Line Interface.

collection

A collection is an array, slice, or map.

content adapter

A content adapter is a template that dynamically creates pages when building a site. For example, use a content adapter to create pages from a remote data source such as JSON, TOML, YAML, or XML. See  details.

content format

A content format is a markup language for creating content. Typically Markdown, but may also be HTML, AsciiDoc, Org, Pandoc, or reStructuredText. See  details.

content type

A content type is a classification of content inferred from the top-level directory name or the type set in front matter. Pages in the root of the content directory, including the home page, are of type “page”. Accessed via .Page.Type in templates. See  details.

content view

A content view is a template called with the Render method on a Page object. See  details.

context

Represented by a dot (.) within a template action, context is the current location in a data structure. For example, while iterating over a collection of pages, the context within each iteration is the page’s data structure. The context received by each template depends on template type and/or how it was called. See  details.

default sort order

The default sort order is the default order in which Hugo sorts page collections: by weight, then by date (descending), then by link title, and then by file path.

duration

A duration is a data type that represent a length of time, expressed using units such as seconds (represented by s), minutes (represented by m), and hours (represented by h). For example, 42s means 42 seconds, 6m7s means 6 minutes and 7 seconds, and 6h7m42s means 6 hours, 7 minutes, and 42 seconds.

element

An element is a member of a slice or array.

embedded template

An embedded template is a built-in component within the Hugo application. This includes features like partials, shortcodes, and render hooks that provide pre-defined structures or functionalities for creating website content.

environment

Typically one of development, staging, or production, each environment may exhibit different behavior depending on configuration and template logic. For example, in a production environment you might minify and fingerprint CSS, but that probably doesn’t make sense in a development environment.

When running the built-in development server with the hugo server command, the environment is set to development. When building your site with the hugo command, the environment is set to production. To override the environment value, use the --environment command line flag or the HUGO_ENVIRONMENT environment variable.

To determine the current environment within a template, use the hugo.Environment function.

field

A field is a predefined key-value pair in front matter such as date or title.

flag

A flag is an option passed to a command-line program, beginning with one or two hyphens. See  details.

float

See floating point.

floating point

The term floating point refers to a numeric data type with a fractional component. For example, 3.14159.

fragment

A fragment is the final segment of a URL, beginning with a hash (#) mark, that references an id attribute of an HTML element on the page.

front matter

The term front matter refers to the metadata at the beginning of each content page, separated from the content by format-specific delimiters. See  details.

function

Used within a template action, a function takes one or more arguments and returns a value. Unlike methods, functions are not associated with an object. See  details.

glob

A glob is a pattern used to match filenames and paths. It’s a shorthand for specifying a set of files, making it easier to work with multiple files at once. See  details.

global resource

A global resource is file within the assets directory, or within any directory mounted to the assets directory.

headless bundle

A headless bundle is an unpublished leaf bundle or an unpublished branch bundle whose content and resources you can include in other pages. See  details.

i18n

See internationalization.

identifier

An identifier is a string that represents a variable, method, object, or field. It must conform to Go’s language specification, beginning with a letter or underscore, followed by zero or more letters, digits, or underscores.

int

See integer.

integer

An integer is a numeric data type without a fractional component. For example, 42.

internationalization

The term internationalization refers to software design and development efforts that enable localization.

interpreted string literal

An interpreted string literal is a character sequences between double quotes, as in “foo”. Within the quotes, any character may appear except a newline and an unescaped double quote. The text between the quotes forms the value of the literal, with backslash escapes interpreted. See  details.

interval

An interval is a range of numbers between two endpoints: closed, open, or half-open.

  • A closed interval, denoted by brackets, includes its endpoints. For example, [0, 1] is the interval where 0 <= x <= 1.

  • An open interval, denoted by parentheses, excludes its endpoints. For example, (0, 1) is the interval where 0 < x < 1.

  • A half-open interval includes only one of its endpoints. For example, (0, 1] is the left-open interval where 0 < x <= 1, while [0, 1) is the right-open interval where 0 <= x < 1.

kind

See page kind.

l10n

See localization.

layout

See template.

leaf bundle

A leaf bundle is a directory that contains an index.md file and zero or more resources. Analogous to a physical leaf, a leaf bundle is at the end of a branch bundle. It has no descendants. See  details.

lexer

A lexer is a software component that identifies keywords, identifiers, operators, numbers, and other basic building blocks of a programming language within the input text.

list page

A list page is any page kind that receives a page collection in context. This includes the home page, section pages, taxonomy pages, and term pages.

list template

A list template is any template that renders a list page. This includes home, section, taxonomy, and term templates.

localization

The term localization refers to the process of adapting a site to meet language and regional requirements. This includes translations, date formats, number formats, currency formats, and collation order. See  details.

logical path
New in v0.123.0

A logical path is a page or page resource identifier derived from the file path, excluding its extension and language identifier. This value is neither a file path nor a URL. Starting with a file path relative to the content directory, Hugo determines the logical path by stripping the file extension and language identifier, converting to lower case, then replacing spaces with hyphens. See  details.

map

A map is an unordered group of elements, each indexed by a unique key. See  details.

Markdown attribute

A Markdown attribute is a key-value pair attached to a Markdown element. These attributes are commonly used to add HTML attributes, like class and id, to the element when it’s rendered into HTML. They provide a way to extend the basic Markdown syntax and add more semantic meaning or styling hooks to your content. See  details.

marshal

To marshal is to transform a data structure into a serialized object. For example, transforming a map into a JSON string. See  details.

method

Used within a template action and associated with an object, a method takes zero or more arguments and either returns a value or performs an action. For example, .IsHome is a method on the .Page object which returns true if the current page is the home page. See also function.

module

A module is a packaged combination of archetypes, assets, content, data, templates, translation tables, static files, or configuration settings. A module may serve as the basis for a new site, or to augment an existing site. See  details.

node

A node is a class of page kinds including home, section, taxonomy, and term.

noop

An abbreviated form of “no operation”, a noop is a statement that does nothing.

object

An object is a data structure with or without associated methods.

ordered taxonomy

Created by invoking the Alphabetical or ByCount method on a Taxonomy object, which is a map, an ordered taxonomy is a slice, where each element is an object that contains the term and a slice of its weighted pages.

output format

An output format is a collection of settings that defines how Hugo renders a file when building a site. For example, html, rss, and json are built-in output formats. You can create multiple output formats and control their generation based on page kind, or by enabling one or more output formats for specific pages. See  details.

page bundle

A page bundle is a directory that encapsulates both content and associated resources. There are two types of page bundles: leaf bundles and branch bundles. See  details.

page collection

A page collection is a slice of Page objects.

page kind

A page kind is a classification of pages, one of home, page, section, taxonomy, or term. See  details.

page resource

A page resource is a file within a page bundle.

pager

Created during pagination, a pager contains a subset of a list page and navigation links to other pagers.

paginate

To paginate is to split a list page into two or more subsets.

pagination

The term pagination refers to the process of paginating a list page. See  details.

paginator

A paginator is a collection of pagers.

parameter

A parameter is typically a user-defined key-value pair at the site or page level, but may also refer to a configuration setting or an argument.

partial

A partial is a template called from any other template including shortcodes, render hooks, and other partials. A partial either renders something or returns something. A partial can also call itself, for example, to walk a data structure.

A permalink is the absolute URL of a published resource or a rendered page, including scheme and host.

pipe

See pipeline.

pipeline

Within a template action, a pipeline is a possibly chained sequence of values, function calls, or method calls. Functions and methods in the pipeline may take multiple arguments.

A pipeline may be chained by separating a sequence of commands with pipeline characters (|). In a chained pipeline, the result of each command is passed as the last argument to the following command. The output of the final command in the pipeline is the value of the pipeline.

pretty URL

A pretty URL is a URL that does not include a file extension.

publish

See build.

raw string literal

A raw string literal is a character sequences between backticks, as in `bar`. Within the backticks, any character may appear except a backtick. Backslashes have no special meaning and the string may contain newlines. Carriage return characters (\r) inside raw string literals are discarded from the raw string value. See  details.

regular page

A regular page is a page with the “page” page kind. See also section page.

A relative permalink is the host-relative URL of a published resource or a rendered page.

remote resource

A remote resource is a file on a remote server, accessible via HTTP or HTTPS.

render hook

A render hook is a template that overrides standard Markdown rendering. See  details.

resource

A resource is any file consumed by the build process to augment or generate content, structure, behavior, or presentation. For example: images, videos, content snippets, CSS, Sass, JavaScript, and data.

Hugo supports three types of resources: global resources, page resources, and remote resources.

resource type

A resource type is the main type of a resource’s media type. Content files such as Markdown, HTML, AsciiDoc, Pandoc, reStructuredText, and Emacs Org Mode have resource type page. Other resource types include image, video, etc. Retrieve the resource type using the ResourceType method on a Resource object.

scalar

A scalar is a single value, one of string, integer, floating point, or boolean.

scope

The term scope refers to the specific region of code where a variable or object is accessible. For example, a variable initialized in one template is not available within another.

scratch pad

Conceptually, a scratch pad is a map with methods to set, get, update, and delete values. Attach the data structure to a Page or Site object using the Store method, or create a locally scoped scratch pad using the newScratch function.

section

A section is a top-level content directory or any content directory containing an _index.md file.

section page

A section page is a page with the “section” page kind. Typically a listing of regular pages and/or other section pages within the current section.

segment

A segment is a subset of a site, filtered by logical path, language, page kind, or output format.

shortcode

A shortcode is a template invoked within markup, accepting any number of arguments. They can be used with any content format to insert elements such as videos, images, and social media embeds into your content. See  details.

slice

A slice is a numbered sequence of elements. Unlike Go’s array data type, slices are dynamically sized. Elements within a slice can be scalars, arrays, maps, pages, or other slices. See  details.

string

A string is a sequence of bytes. For example, "What is 6 times 7?".

taxonomic weight

Defined in front matter and unique to each taxonomy, a taxonomic weight is a weight that determines the sort order of page collections contained within a Taxonomy object. See  details.

taxonomy

A taxonomy is a group of related terms used to classify content. For example, a “colors” taxonomy might include the terms “red”, “green”, and “blue”. See  details.

taxonomy object

A taxonomy object is a map of terms and the weighted pages associated with each term.

taxonomy page

A taxonomy page is a page with the “taxonomy” page kind. Typically a listing of terms within a given taxonomy.

template

A template is a file with template actions, located within the layouts directory of a project, theme, or module. See  details.

template action

A data evaluation or control structure within a template, delimited by “{{" and ”}}". See  details.

term

A term is a member of a taxonomy, used to classify content. See  details.

term page

A term page is a page with the “term” page kind. Typically a listing of regular pages and section pages with a given term.

theme

A theme is a packaged combination of archetypes, assets, content, data, templates, translation tables, static files, or configuration settings. A theme may serve as the basis for a new site, or to augment an existing site.

token

A token is an identifier within a format string, beginning with a colon and replaced with a value when rendered. For example, use tokens in format strings for both permalinks and dates.

type

See content type.

ugly URL

An ugly URL is a URL that includes a file extension.

unmarshal

To unmarshal is to transform a serialized object into a data structure. For example, transforming a JSON file into a map that you can access within a template. See  details.

variable

A variable is a user-defined identifier prepended with a $ symbol, representing a value of any data type, initialized or assigned within a template action. For example, $foo and $bar are variables.

walk

To walk is to recursively traverse a nested data structure. For example, rendering a multilevel menu.

weight

A weight is a numeric value used to position an element within a sorted collection. Assign weights using non-zero integers. Lighter items float to the top, while heavier items sink to the bottom. Unweighted or zero-weighted elements are placed at the end of the collection. Weights are typically assigned to pages, menu entries, languages, and output formats.

weighted page

Contained within a taxonomy object, a weighted page is a map with two elements: a Page object, and its taxonomic weight as defined in front matter. Access the elements using the Page and Weight keys.

zero time

The zero time is January 1, 0001, 00:00:00 UTC. Formatted per RFC3339 the zero time is 0001-01-01T00:00:00-00:00.