雨果–如何基于计数器添加不同的类名

时间:2018-07-06 22:53:51

标签: loops templating hugo

使用Hugo,我需要在前几篇文章中添加唯一的类名。如何才能做到这一点?

我的代码显然不起作用...

// if the first post
{{ if eq .Site.GetPage 1 }}
    {{ $classname := "class-one" }}
// else the second post
{{ elseif eq .Site.GetPage 2 }}
    {{ $classname := "class-two" }}
// else the third post
{{ elseif eq .Site.GetPage 3 }}
    {{ $classname := "class-three" }}
{{ else }}
{{ end }}

<li class="{{ $classname }}">
    …
</li>

1 个答案:

答案 0 :(得分:0)

也许有一些更有效的方法,但这可行:

{{ $paginator := .Paginate (where .Data.Pages.ByDate.Reverse "Type" "post") }}

{{ range $index, $element := $paginator.Pages }}

{{ if (eq $index 0) }}
{{ $.Scratch.Set "classname" "class-one" }}
{{ else if (eq $index 1) }}
{{ $.Scratch.Set "classname" "class-two" }}
{{ else }}
{{ $.Scratch.Set "classname" "" }}
{{ end }}

<li class="{{ $.Scratch.Get "classname" | safeHTML }}">
    …
</li>

{{ end }}