.GetPage
Syntax
.GetPage TYPE PATH
Every Page
has a Kind
attribute that shows what kind of page it is. While this attribute can be used to list pages of a certain kind
using where
, often it can be useful to fetch a single page by its path.
.GetPage
looks up a page of a given Kind
and path
.
{{ with .Site.GetPage "section" "blog" }}{{ .Title }}{{ end }}
This method wil return nil
when no page could be found, so the above will not print anything if the blog section isn’t found.
For a regular page:
{{ with .Site.GetPage "page" "blog" "my-post.md" }}{{ .Title }}{{ end }}
Note that the path can also be supplied like this:
{{ with .Site.GetPage "page" "blog/my-post.md" }}{{ .Title }}{{ end }}
The valid page kinds are: page, home, section, taxonomy and taxonomyTerm.
.GetPage
Example
This code snippet—in the form of a partial template—allows you to do the following:
- Grab the index object of your
tags
taxonomy. - Assign this object to a variable,
$t
- Sort the terms associated with the taxonomy by popularity.
- Grab the top two most popular terms in the taxonomy (i.e., the two most popular tags assigned to content.
grab-top-two-tags.html
<ul class="most-popular-tags">
{{ $t := $.Site.GetPage "taxonomyTerm" "tags" }}
{{ range first 2 $t.Data.Terms.ByCount }}
<li>{{.}}</li>
{{ end }}
</ul>