2017-03-27 16:32:31 -05:00

1.7 KiB

title linktitle description godocref date publishdate lastmod categories tags ns signature workson hugoversion relatedfuncs deprecated aliases
getpage GetPage Looks up the index page (`_index.md`) of a given `Kind` and `path`. 2017-02-01 2017-02-01 2017-02-01
functions
sections
lists
indexes
GetPage TYPE PATH
false

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 an index page of a given Kind and path. This method may support regular pages in the future, but currently it is a convenient way of getting the index pages, such as the home page or a section, from a template:

{{ 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.

The valid page kinds are: home, section, taxonomy and taxonomyTerm.

.GetPage Example

This code snippet---in the form of a partial template---allows you to do the following:

  1. Grab the index object of your tags taxonomy.
  2. Assign this object to a variable, $t
  3. Sort the terms associated with the taxonomy by popularity.
  4. Grab the top two most popular terms in the taxonomy (i.e., the two most popular tags assigned to content.

{{% code file="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>

{{% /code %}}