60 lines (54 loc) · 1.88 KB
 1{{ define "main" }}
 2<div class="section shell--narrow">
 3  <header class="section-header tag-header">
 4    <div class="tag-header__group">
 5      <p class="section-header__label">Tag</p>
 6      <h1 class="section-header__title title-lg"><span class="tag-list__name">{{ .Title }}</span></h1>
 7    </div>
 8  </header>
 9
10  {{ with .Content }}
11  <h2 class="label tag-header__desc-label">About</h2>
12  <div class="section-header__desc tag-header__desc">{{ . }}</div>
13  {{ end }}
14
15  <h2 class="label">Posts</h2>
16
17  {{- $pages := sort .Pages "Date" "desc" -}}
18  {{- $showDrafts := hugo.IsDevelopment -}}
19
20  {{- if $showDrafts -}}
21    {{ if gt (len $pages) 0 }}
22      <ul class="post-list">
23        {{ range $pages }}
24        {{ partial "post/card.html" (dict "page" .) }}
25        {{ end }}
26      </ul>
27    {{ else }}
28      <p class="post-empty">No posts for this tag yet.</p>
29    {{ end }}
30  {{- else -}}
31    {{- $published := where $pages "Draft" false -}}
32    {{- if gt (len $published) 0 -}}
33      {{- $paginator := .Paginate $published -}}
34      <ul class="post-list">
35        {{ range $paginator.Pages }}
36        {{ partial "post/card.html" (dict "page" .) }}
37        {{ end }}
38      </ul>
39
40      {{ if gt $paginator.TotalPages 1 }}
41      <nav class="pagination" aria-label="Pagination">
42        {{ if $paginator.HasPrev }}
43        <a href="{{ $paginator.Prev.URL }}" class="pagination__link link">Previous</a>
44        {{ end }}
45        <span class="pagination__info">{{ $paginator.PageNumber }} / {{ $paginator.TotalPages }}</span>
46        {{ if $paginator.HasNext }}
47        <a href="{{ $paginator.Next.URL }}" class="pagination__link link">Next</a>
48        {{ end }}
49      </nav>
50      {{ end }}
51    {{- else -}}
52      <p class="post-empty">No posts for this tag yet.</p>
53    {{- end -}}
54  {{- end -}}
55
56  <div class="tag-back">
57    <a href="{{ "/tags/" | relLangURL }}" class="tag-back__link">All tags</a>
58  </div>
59</div>
60{{ end }}