hugo-theme-more-contentful/layouts/_default/single.html
Gabriel Arazas 143341838d
Some checks failed
Build demo / build (push) Has been cancelled
Update Nix dependencies / update-nix-deps (push) Has been cancelled
Fix translation links
2024-11-19 12:13:35 +08:00

63 lines
2.6 KiB
HTML

{{ define "main" }}
<div class="post--single">
<main>
<article>
<header>
<h1>{{ .Title }}</h1>
{{ partial "partials/components/post-meta.html" . }}
</header>
{{ $is_toc := cond (ne .Params.toc nil) .Params.toc $.Site.Params.toc }}
{{ if (and $is_toc (gt (countrunes .TableOfContents) 0)) }}
<style>
#TableOfContents:not(:empty)::before {
content: "{{ i18n "table_of_contents" | default "Table of contents" }}";
font-weight: bold;
}
</style>
{{ .TableOfContents }}
{{ end }}
{{ .Content }}
</article>
</main>
{{ if or (or .PublishDate .Lastmod) .IsTranslated }}
<hr aria-hidden="true"/>
<div class="post__meta--single" aria-hidden="true">
<!-- List the author(s) of the article. -->
{{- with .Params.author }}
{{- $names := slice }}
{{- range . }}{{ $names = $names | append .name }}{{ end }}
<p data-content-author="{{ jsonify $names }}">{{ i18n "published_by" }}: {{ delimit $names ", " (printf " %s " (i18n "and")) }}</p>
{{- end }}
<!-- Only show the creation date if the `date` field is valid. -->
{{- if ne (.PublishDate.Format "2006") "0001" -}}
<!-- Publication date. -->
<p data-content-publication-date="{{ .PublishDate.Format "2006-01-02T15:04:05Z07:00" }}">{{ i18n "published_on" }}: <time datetime="{{ .PublishDate.Format "2006-01-02T15:04:05Z07:00" }}">{{ .PublishDate.Format "2006-01-02" }}</time></p>
{{- end }}
<!-- Modification date (will only appear if the publication date is less than the modified date.) -->
{{- if ne .PublishDate .Lastmod }}
<p data-content-modification-date="{{ .Lastmod.Format "2006-01-02T15:04:05Z07:00" }}">{{ i18n "updated_on" }}: <time datetime="{{ .Lastmod.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Lastmod.Format "2006-01-02" }}</time></p>
{{- end }}
<!-- Link the translated versions if the article has at least one translated page. -->
{{- if .IsTranslated }}
{{- $lang_links := slice }}
{{- $langs := slice }}
{{- range .Translations }}
{{- $lang := cond (ne .Language.LanguageName nil) .Language.LanguageName .Lang }}
{{ $lang_links = $lang_links | append (printf "<a href=\"%s\">%s</a>" .RelPermalink $lang) }}
{{ $langs = $langs | append $lang }}
{{- end }}
<p data-content-translations="{{ jsonify $langs }}">{{ i18n "available_translations" }}: {{ delimit $lang_links "," (printf " %s " (i18n "and")) | safeHTML }}</p>
{{- end }}
</div>
{{ end }}
</div>
{{ end }}