mirror of https://github.com/gohugoio/hugo
2.0 KiB
2.0 KiB
title | description | categories | keywords | action | aliases | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
collections.After | Slices an array to the items after the Nth item. |
|
|
The following shows after
being used in conjunction with the slice
function:
{{ $data := slice "one" "two" "three" "four" }}
<ul>
{{ range after 2 $data }}
<li>{{ . }}</li>
{{ end }}
</ul>
The template above is rendered to:
<ul>
<li>three</li>
<li>four</li>
</ul>
Example of after
with first
: 2nd–4th most recent articles
You can use after
in combination with the first
function and Hugo's powerful sorting methods. Let's assume you have a section
page at example.com/articles
. You have 10 articles, but you want your template to show only two rows:
- The top row is titled "Featured" and shows only the most recently published article (i.e. by
publishdate
in the content files' front matter). - The second row is titled "Recent Articles" and shows only the 2nd- to 4th-most recently published articles.
{{< code file=layouts/section/articles.html >}} {{ define "main" }}
Featured Article
{{ range first 1 .Pages.ByPublishDate.Reverse }}{{ .Title }}
{{ .Description }}
{{ end }}Recent Articles
{{ range first 3 (after 1 .Pages.ByPublishDate.Reverse) }}{{ .Title }}
{{ .Description }}