diff options
| author | Sivaldo <git@sivaldodavi.com> | 2026-06-29 18:36:52 -0300 |
|---|---|---|
| committer | Sivaldo <git@sivaldodavi.com> | 2026-06-29 18:36:52 -0300 |
| commit | dd7670cf72b27c1b330d3732a483ca22e3a3db18 (patch) | |
| tree | 16d4e458d93cd7181d4ebc950ed406b45038f53b /layouts/leituras/list.html | |
Commit inicial
Diffstat (limited to 'layouts/leituras/list.html')
| -rw-r--r-- | layouts/leituras/list.html | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/layouts/leituras/list.html b/layouts/leituras/list.html new file mode 100644 index 0000000..f6844cb --- /dev/null +++ b/layouts/leituras/list.html @@ -0,0 +1,90 @@ +{{ partial "header.html" . -}} + +<main class="post-body"> + + <a class="back-link" href="/">← sivaldodavi.com</a> + + <h1 class="page-title">Leituras</h1> + <p class="page-intro"> + Livros que li, estou lendo, ou que comecei e parei — organizados por área. + </p> + + {{/* Categorias e subcategorias são derivadas do conteúdo (frontmatter), e não + mais fixadas no template — basta adicionar "categoria" num novo livro + para que ele apareça automaticamente, sem editar este arquivo. */}} + {{ $livrosTodos := .RegularPages }} + {{ $categorias := slice }} + {{ range $livrosTodos }} + {{ with .Params.categoria }} + {{ $categorias = $categorias | append . }} + {{ end }} + {{ end }} + {{ $categorias = $categorias | uniq | sort }} + + <nav class="indice"> + {{ range $categorias }} + <a href="#{{ . | urlize }}">{{ . }}</a> + {{ end }} + </nav> + + {{ range $categorias }} + {{ $categoria := . }} + {{ $livros := where $livrosTodos "Params.categoria" $categoria }} + <section class="categoria" id="{{ $categoria | urlize }}"> + <h2>{{ $categoria }}</h2> + + {{ $semSub := where $livros "Params.subcategoria" "" }} + {{ range $semSub.ByTitle }} + <div class="livro"> + {{ if .Params.capa }} + <div class="livro-capa"><img src="{{ .Params.capa }}" alt="Capa do livro {{ .Title }}"></div> + {{ else }} + <div class="livro-capa sem-capa">sem capa</div> + {{ end }} + <div class="livro-info"> + <a class="livro-titulo" href="{{ .Permalink }}">{{ .Title }}</a> + <span class="livro-autor">{{ .Params.autor }}</span> + </div> + {{ if and .Params.status (ne .Params.status "lido") }} + <span class="livro-status livro-status-{{ .Params.status | urlize }}">{{ .Params.status }}</span> + {{ end }} + </div> + {{ end }} + + {{ $subcategorias := slice }} + {{ range $livros }} + {{ with .Params.subcategoria }} + {{ $subcategorias = $subcategorias | append . }} + {{ end }} + {{ end }} + {{ $subcategorias = $subcategorias | uniq | sort }} + + {{ range $subcategorias }} + {{ $sub := . }} + {{ $livrosSub := where $livros "Params.subcategoria" $sub }} + <div class="subcategoria"> + <h3>{{ $sub }}</h3> + {{ range $livrosSub.ByTitle }} + <div class="livro"> + {{ if .Params.capa }} + <div class="livro-capa"><img src="{{ .Params.capa }}" alt="Capa do livro {{ .Title }}"></div> + {{ else }} + <div class="livro-capa sem-capa">sem capa</div> + {{ end }} + <div class="livro-info"> + <a class="livro-titulo" href="{{ .Permalink }}">{{ .Title }}</a> + <span class="livro-autor">{{ .Params.autor }}</span> + </div> + {{ if and .Params.status (ne .Params.status "lido") }} + <span class="livro-status livro-status-{{ .Params.status | urlize }}">{{ .Params.status }}</span> + {{ end }} + </div> + {{ end }} + </div> + {{ end }} + </section> + {{ end }} + +</main> + +{{ partial "footer.html" . }} |
