Files
2026-07-13 11:58:46 +08:00

2.2 KiB

title, description, categories, keywords, params
title description categories keywords params
Rotate Returns a collection of pages that vary along the specified dimension while sharing the current page's values for the other dimensions, including the current page, sorted by the dimension's default sort order.
functions_and_methods
returnType signatures
page.Pages
PAGE.Rotate DIMENSION

{{< new-in 0.153.0 />}}

The rotate method on a page object returns a collection of pages that vary along the specified dimension, while holding the other dimensions constant. The result includes the current page and is sorted according to the rules of the specified dimension. For example, rotating along language returns all language variants that share the current page's version and role.

The DIMENSION argument must be one of language, version, or role.

Sort order

Use the following rules to understand how Hugo sorts the collection returned by the Rotate method.

Dimension Primary Sort Secondary Sort
Language Weight ascending Lexicographical ascending
Version Weight ascending Semantic version descending
Role Weight ascending Lexicographical ascending

Examples

To render a list of the current page's language variants, including the current page, while sharing its current version and role:

{{/* Returns languages sorted by weight ascending, then lexicographically ascending */}}
{{ range .Rotate "language" }}
  <h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
{{ end }}

To render a list of the current page's version variants, including the current page, while sharing its current language and role:

{{/* Returns versions sorted by weight ascending, then semantic version descending */}}
{{ range .Rotate "version" }}
  <h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
{{ end }}

To render a list of the current page's role variants, including the current page, while sharing its current language and version:

{{/* Returns roles sorted by weight ascending, then lexicographically ascending */}}
{{ range .Rotate "role" }}
  <h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
{{ end }}