Glossary
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 where0 <= 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.0A 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.
permalink
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.
relative permalink
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.