{{ define "main" }} {{ $allNonExcludedPages := where .Site.RegularPages "Params.excludefromindex" "==" nil }} {{ $allNonExcludedPagesNotTypePage := (where .Site.RegularPages "Type" "ne" "page" | intersect $allNonExcludedPages) }} {{ $pinnedPostRelPermalinks := split .Site.Params.pinnedPost "," }} {{ $pinnedPosts := where $allNonExcludedPagesNotTypePage "RelPermalink" "in" $pinnedPostRelPermalinks }} {{ $pagesToPaginate := where $allNonExcludedPagesNotTypePage "RelPermalink" "not in" $pinnedPostRelPermalinks }} {{ $paginationLimit := index .Site.Params "paginate" | default 7 }} {{ if not .Site.Params.pinOnlyToFirstPage }} {{ $paginationLimit = sub $paginationLimit (len $pinnedPosts) }} {{ end }} {{ $paginator := .Paginate $pagesToPaginate $paginationLimit }} {{ if .Site.Params.pinnedPost }} {{ if (and .Site.Params.pinOnlyToFirstPage (ne $paginator.PageNumber 1)) }} {{/* Do nothing if the pinOnlyToFirstPage flag is set and we're not on page 1. */}} {{else}} {{ range $pinnedPosts }} {{ partial "article-wrapper.html" . }} {{end}} {{end}} {{end}} {{ range $paginator.Pages }} {{ partial "article-wrapper.html" . }} {{ end }} {{ partial "paginator.html" . }} {{ end }}