hugo-theme-stack-stars/layouts/partials/article/components/header.html
Jimmy Cai 32732d4bf1 feat: avoid regenerate color scheme when image URL is changed
Use MD5 as key to identify images, and .Slug as id
2020-08-28 12:11:02 +02:00

53 lines
No EOL
1.9 KiB
HTML

<header class="article-header">
{{ if .Params.image }}
{{- $image := partial "helper/image" . -}}
{{- $tablet := $image.Resize "1024x" -}}
{{- $desktop := $image.Resize "2000x" -}}
<div class="article-image">
<img srcset="{{ $tablet.RelPermalink }} 1024w, {{ $desktop.RelPermalink }} 2000w"
src="{{ $desktop.RelPermalink }}" width="{{ $image.Width }}" height="{{ $image.Height }}"
loading="lazy"
alt="Featured image of post {{ .Title }}" />
</div>
{{ end }}
{{ $i := .Params.image }}
{{ $context := . }}
<div class="article-details">
{{ with $categories := .Params.categories }}
<header class="article-category">
{{ range $categories }}
{{ if $i }}
{{- $image := partial "helper/image" $context | resources.Fingerprint "md5" -}}
{{- $20x := $image.Fill "20x20 smart" -}}
<a href="/categories/{{ . | urlize }}" class="color-tag"
data-image="{{ $20x.RelPermalink }}" data-id="{{ $context.Slug }}" data-key="{{ $image.Data.Integrity }}">{{ . | humanize }}</a>
{{ else }}
<a href="/categories/{{ . | urlize }}">{{ . | humanize }}</a>
{{ end }}
{{ end }}
</header>
{{ end }}
<h2 class="article-title">
<a href="{{ .Permalink }}">
{{- .Title -}}
</a>
</h2>
{{ with .Params.description }}
<h3 class="article-subtitle">
{{ . }}
</h3>
{{ end }}
<footer class="article-time">
{{ (resources.Get "icons/clock.svg").Content | safeHTML }}
<time datetime='{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}'>
{{- .Date.Format ( or .Site.Params.dateFormat "Jan 02, 2006" ) -}}
</time>
</footer>
</div>
</header>