{{/* 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" .)) }} {{ 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 }}
{{/* Output partials */}} {{ with ($meta.Get "partials") }} {{ delimit . "·" }} {{ end }} {{/* Output draft label */}} {{ if and (eq $scope "single") (and .Draft .Site.Params.article.showDraftLabel) }} {{ partial "badge.html" (i18n "article.draft" | emojify) }} {{ end }}
{{ end }}