🌿 In crescita

Per iniziare, si copia il partial del tema (PaperMod) nella cartella corrispondente del progetto, ovvero:

  • /layouts/partials/

Il file si chiama post_meta.html.

La struttura del partial

Di base, si tratta di inserire i singoli elementi, o cambiare loro di posto, fra la prima riga del file:

{{- $scratch := newScratch }}

e le ultime

{{- with ($scratch.Get "meta") }}
{{- delimit . " | " | safeHTML -}}
{{- end -}} 

Di suo, il tema prevede: la data di creazione, il tempo di lettura, numero di parole e autore. Di queste, uso solo la data di pubblicazione, e ho aggiunto le altre informazioni che mi interessavano.

Con un po’ di attenzione, è piuttosto semplice anche modificare i testi.

Il partial completo

Il partial completo con tutte le modifiche che ho apportato è invece quello che segue. Ho aggiunto le categorie , l’ordinamento per data di ultima modifica (pagina in arrivo) , le serie (pagina in arrivo) e le traduzioni (pagina in arrivo) .

Ho anche modificato i testi e aggiunto le emoticons, dove serviva.

Numero di parole e tempo di lettura si disattivano dal file di configurazione.

{{- $scratch := newScratch }}
{{ $date := .Date.Format "02.01.2006" }}

{{- /* LASTMOD */ -}}
{{ $lastmod := .Lastmod.Format "02.01.2006" }}

{{- /* LASTMOD */ -}}
{{- if ne $lastmod $date -}}
{{- $scratch.Add "meta" (slice (printf "<span title='%s'>🌿 %s</span>" (.Lastmod) (.Lastmod | time.Format ":date_medium"))) }}
{{- end }}

{{- if not .Date.IsZero -}}
{{- $scratch.Add "meta" (slice (printf "<span title='%s'>🌱 %s</span>" (.Date) (.Date | time.Format ":date_medium"))) }}
{{- end }}

{{- /* CATEGORIE */ -}}
{{- $categories := (partial "categories.html" .) }} 
{{- if $categories }} 
{{- $scratch.Add "meta" (slice (printf "%s" $categories  )) }} 
{{- end}}

{{- /* SERIE */ -}}
{{- $pageSeries := "" }}
{{- if .Params.series }}
    {{- $seriesName := .Params.series }}
    {{- range .Site.Taxonomies.series }}
        {{- if eq .Page.Title $seriesName }}
            {{- $pageSeries = printf "<a href=\"%s\">%s</a>" .Page.Permalink .Page.Title }}
        {{- end }}
    {{- end }}
{{- end }}

{{- if $pageSeries }}
    {{- $scratch.Add "meta" (slice (printf "Serie:&nbsp;%s" $pageSeries )) }}
{{- end }}

{{- if (.Param "ShowReadingTime") -}}
{{- $scratch.Add "meta" (slice (i18n "read_time" .ReadingTime | default (printf "%d min" .ReadingTime))) }}
{{- end }}

{{- if (.Param "ShowWordCount") -}}
{{- $scratch.Add "meta" (slice (i18n "words" .WordCount | default (printf "%d words" .WordCount))) }}
{{- end }}

{{- /* TRANSLATION */ -}}
{{- $translation := partial "translation.html" . }}
{{- if $translation }}
  {{- $scratch.Add "meta" (slice $translation) }}
{{- end }}

{{- with ($scratch.Get "meta") }}
{{- delimit . "&nbsp;|&nbsp;" | safeHTML -}}
{{- end -}}