"Fossies" - the Fresh Open Source Software Archive

Member "hugo-0.113.0/docs/content/en/functions/after.md" (5 Jun 2023, 1918 Bytes) of package /linux/www/hugo-0.113.0.tar.gz:

As a special service "Fossies" has tried to format the requested source page into HTML format (assuming markdown format). Alternatively you can here view or download the uninterpreted source code file. A member file download can also be achieved by clicking within a package contents listing on the according byte size field.

A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.

The following shows after being used in conjunction with the slice function:

{{ $data := slice "one" "two" "three" "four" }}
{{ range after 2 $data }}
    {{ . }}
{{ end }}
→ ["three", "four"]

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 list page at example.com/articles. You have 10 articles, but you want your templating for the list/section page to show only two rows:

  1. The top row is titled "Featured" and shows only the most recently published article (i.e. by publishdate in the content files' front matter).
  2. 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 }}

{{ end }}
{{ end }} {{< /code >}}