HUGO
News Docs Themes Community GitHub

collections.Shuffle

Returns a random permutation of a given array or slice.

Syntax

collections.Shuffle COLLECTION

Returns

any

Alias

shuffle
{{ collections.Shuffle (slice "a" "b" "c") }} → [b a c]

The result will vary from one build to the next.

To render an unordered list of 5 random pages from a page collection:

<ul>
  {{ $p := site.RegularPages }}
  {{ range $p | collections.Shuffle | first 5 }}
    <li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
  {{ end }}
</ul>