{{- /* Usage: {{< tagarticles "review" >}} [ {"url":"/archive/articles/2017/01/","title":"Old Review","date":"2017-01-15"} ] {{< /tagarticles >}} Arguments: - 0 (required): tag name - Inner (optional): JSON array of additional articles */ -}} {{- $tag := .Get 0 -}} {{- if not $tag -}} {{- errorf "tagarticles requires tag as first positional parameter" -}} {{- end -}} {{- /* Parse optional JSON from inner content */ -}} {{- $archivedArticles := slice -}} {{- if .Inner -}} {{- $archivedArticles = transform.Unmarshal .Inner -}} {{- end -}} {{- /* Collect taxonomy pages */ -}} {{- $tagPages := slice -}} {{- with (index .Site.Taxonomies.tags $tag) -}} {{- $tagPages = .Pages -}} {{- end -}} {{- /* Build unified list */ -}} {{- $items := slice -}} {{- range $tagPages -}} {{- $items = $items | append (dict "url" .RelPermalink "title" .Title "date" .Date ) -}} {{- end -}} {{- range $archivedArticles -}} {{- $items = $items | append (dict "url" .url "title" .title "date" (time .date) ) -}} {{- end -}} {{- $items = sort $items "date" "desc" -}} {{- if gt (len $items) 0 -}} {{- end -}}