{{/* Determine the correct context and scope */}} {{/* This allows for different logic depending on where the partial is called */}} {{ $context := . }} {{ $scope := default nil }} {{ if (reflect.IsMap . ) }} {{ $context = .context }} {{ $scope = cond (not .scope) nil .scope }} {{ end }} {{ with $context }} {{ $meta := newScratch }} {{/* Gather partials for this context */}} {{ if .Params.showDate | default (.Site.Params.article.showDate | default true) }} {{ $meta.Add "partials" (slice (partial "meta/date.html" .Date)) }} {{ end }} {{ if and (.Params.showDateUpdated | default (.Site.Params.article.showDateUpdated | default false)) (ne (partial "functions/date.html" .Date) (partial "functions/date.html" .Lastmod)) }} {{ $meta.Add "partials" (slice (partial "meta/date-updated.html" .Lastmod)) }} {{ end }} {{ if and (.Params.showWordCount | default (.Site.Params.article.showWordCount | default false)) (ne .WordCount 0) }} {{ $meta.Add "partials" (slice (partial "meta/word-count.html" .)) }} {{ end }} {{ if and (.Params.showReadingTime | default (.Site.Params.article.showReadingTime | default true)) (ne .ReadingTime 0) }} {{ $meta.Add "partials" (slice (partial "meta/reading-time.html" .)) }} {{ end }} {{ if and (eq $scope "single") (.Params.showEdit | default (.Site.Params.article.showEdit | default false)) }} {{ $meta.Add "partials" (slice (partial "meta/edit.html" .)) }} {{ end }}