mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-14 20:37:55 -05:00
ef6f101e75
1214f6ffb Document cleanDestinationDir configuration setting 27ca65463 Clarify .Page.Param method (#1953) 3fa1792d2 Document the usage of `hardWrap` option for markdown rendering (#1951) 8b5afdfb4 Update theme 207e7f0a0 fix docs for getting remote font 1f7094b9e Correct typo f9d6445c4 Added missing `/` in URL generator (#1946) 3a22ee7d6 Remove translations b3b900f3f Update introduction.md aca440052 rm Forestry - facing end-of-life shortly (#1944) af0014e14 Update scss-sass.md 1c43bbbc9 Merge branch 'docs/goworkspace' d034175ca netlify: Hugo 0.109.0 d3a6a5c3f Merge branch 'tempv0.109.0' e033dbead docs: Regen docs helper JSON 452bf675c resource/page: Add Page.Ancestors 12edd7363 Add some docs for workspaces 8f0fcba6b Add HUGO_PUBLISHDIR to the Node environment 4e66d98ad Update theme 808aee6f6 config: Update to ga v4 1de2bc5a9 config: Update to ga v4 ddb5fd6b0 Merge commit '41bc6f702aa54200530efbf4267e5c823df3028d' 54c54bf76 modules: Adjust watch logic vs workspace use definitions git-subtree-dir: docs git-subtree-split: 1214f6ffbf680e853746aaeb6cb097b28c0c556b
93 lines
3 KiB
Markdown
93 lines
3 KiB
Markdown
---
|
|
title: Single Page Templates
|
|
linktitle:
|
|
description: The primary view of content in Hugo is the single view. Hugo will render every Markdown file provided with a corresponding single template.
|
|
date: 2017-02-01
|
|
publishdate: 2017-02-01
|
|
lastmod: 2017-04-06
|
|
categories: [templates]
|
|
keywords: [page, templates]
|
|
menu:
|
|
docs:
|
|
parent: "templates"
|
|
weight: 60
|
|
weight: 60
|
|
sections_weight: 60
|
|
draft: false
|
|
aliases: [/layout/content/]
|
|
toc: true
|
|
---
|
|
|
|
## Single Page Template Lookup Order
|
|
|
|
See [Template Lookup](/templates/lookup-order/).
|
|
|
|
## Example Single Page Templates
|
|
|
|
Content pages are of the type `page` and will therefore have all the [page variables][pagevars] and [site variables] available to use in their templates.
|
|
|
|
### `posts/single.html`
|
|
|
|
This single page template makes use of Hugo [base templates], the [`.Format` function] for dates, the [`.WordCount` page variable][pagevars], and ranges through the single content's specific [taxonomies][pagetaxonomy]. [`with`] is also used to check whether the taxonomies are set in the front matter.
|
|
|
|
{{< code file="layouts/posts/single.html" download="single.html" >}}
|
|
{{ define "main" }}
|
|
|
|
<section id="main">
|
|
<h1 id="title">{{ .Title }}</h1>
|
|
<div>
|
|
<article id="content">
|
|
{{ .Content }}
|
|
</article>
|
|
</div>
|
|
</section>
|
|
<aside id="meta">
|
|
<div>
|
|
<section>
|
|
<h4 id="date"> {{ .Date.Format "Mon Jan 2, 2006" }} </h4>
|
|
<h5 id="wordcount"> {{ .WordCount }} Words </h5>
|
|
</section>
|
|
{{ with .GetTerms "topics" }}
|
|
<ul id="topics">
|
|
{{ range . }}
|
|
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
|
|
{{ end }}
|
|
</ul>
|
|
{{ end }}
|
|
{{ with .GetTerms "tags" }}
|
|
<ul id="tags">
|
|
{{ range . }}
|
|
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
|
|
{{ end }}
|
|
</ul>
|
|
{{ end }}
|
|
</div>
|
|
<div>
|
|
{{ with .PrevInSection }}
|
|
<a class="previous" href="{{.Permalink}}"> {{.Title}}</a>
|
|
{{ end }}
|
|
{{ with .NextInSection }}
|
|
<a class="next" href="{{.Permalink}}"> {{.Title}}</a>
|
|
{{ end }}
|
|
</div>
|
|
</aside>
|
|
{{ end }}
|
|
{{< /code >}}
|
|
|
|
To easily generate new instances of a content type (e.g., new `.md` files in a section like `project/`) with preconfigured front matter, use [content archetypes][archetypes].
|
|
|
|
[archetypes]: /content-management/archetypes/
|
|
[base templates]: /templates/base/
|
|
[config]: /getting-started/configuration/
|
|
[content type]: /content-management/types/
|
|
[directory structure]: /getting-started/directory-structure/
|
|
[dry]: https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
|
|
[`.format` function]: /functions/format/
|
|
[front matter]: /content-management/front-matter/
|
|
[pagetaxonomy]: /templates/taxonomy-templates/#display-a-single-piece-of-contents-taxonomies
|
|
[pagevars]: /variables/page/
|
|
[partials]: /templates/partials/
|
|
[section]: /content-management/sections/
|
|
[site variables]: /variables/site/
|
|
[spf13]: https://spf13.com/
|
|
[`with`]: /functions/with/
|