Single templates
Create a single template to render a single page.
We did a complete overhaul of Hugo’s template system in v0.146.0.
We’re working on getting all of the relevant documentation up to date, but until
then, see this page.
The single template below inherits the site’s shell from the base template.
layouts/_default/single.html
{{ define "main" }}
<h1>{{ .Title }}</h1>
{{ .Content }}
{{ end }}
Review the template lookup order to select a template path that provides the desired level of specificity.
The single template below inherits the site’s shell from the base template, and renders the page title, creation date, content, and a list of associated terms in the “tags” taxonomy.
layouts/_default/single.html
{{ define "main" }}
<section>
<h1>{{ .Title }}</h1>
{{ with .Date }}
{{ $dateMachine := . | time.Format "2006-01-02T15:04:05-07:00" }}
{{ $dateHuman := . | time.Format ":date_long" }}
<time datetime="{{ $dateMachine }}">{{ $dateHuman }}</time>
{{ end }}
<article>
{{ .Content }}
</article>
<aside>
{{ with .GetTerms "tags" }}
<div>{{ (index . 0).Parent.LinkTitle }}</div>
<ul>
{{ range . }}
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
{{ end }}
</ul>
{{ end }}
</aside>
</section>
{{ end }}
Last updated:
May 8, 2025
:
Add a one pager about the new template system (53319a681)
Improve this page