forked from drowl87/hextra_mirror

* Change processing method to more generic hugo .Process and allow resources from local .Page.Resources as well as global resources * Add comments * Fix double curly brackets error Co-authored-by: Xin <fuxin1997@gmail.com> * Maintain backward compatibility by using defaulting $process to $methd $options https://github.com/imfing/hextra/pull/538#discussion_r1903250264 * Use printf instead of delimit Co-authored-by: Xin <fuxin1997@gmail.com> --------- Co-authored-by: Xin <fuxin1997@gmail.com>
45 lines
1.3 KiB
HTML
45 lines
1.3 KiB
HTML
{{- $context := . -}}
|
|
{{- $link := .Get "link" -}}
|
|
{{- $title := .Get "title" -}}
|
|
{{- $icon := .Get "icon" -}}
|
|
{{- $subtitle := .Get "subtitle" -}}
|
|
{{- $image := .Get "image" -}}
|
|
{{- $width := 0 -}}
|
|
{{- $height := 0 -}}
|
|
{{- $imageStyle := .Get "imageStyle" -}}
|
|
{{- $tag := .Get "tag" -}}
|
|
{{- $tagType := .Get "tagType" -}}
|
|
|
|
{{/* Image processing options */}}
|
|
{{- $method := .Get "method" | default "Resize" | humanize -}}
|
|
{{- $options := .Get "options" | default "800x webp q80" -}}
|
|
{{- $process := .Get "process" | default (printf "%s %s" $method $options) -}}
|
|
|
|
{{- with or (.Page.Resources.Get $image) (resources.Get $image) -}}
|
|
{{/* Retrieve the $image resource from local or global resources */}}
|
|
{{- $processed := .Process $process -}}
|
|
{{- $width = $processed.Width -}}
|
|
{{- $height = $processed.Height -}}
|
|
{{- $image = $processed.RelPermalink -}}
|
|
{{ else }}
|
|
{{/* Otherwise, use relative link of the image */}}
|
|
{{- if hasPrefix $image "/" -}}
|
|
{{- $image = relURL (strings.TrimPrefix "/" $image) -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- partial "shortcodes/card" (dict
|
|
"page" .Page
|
|
"link" $link
|
|
"title" $title
|
|
"icon" $icon
|
|
"subtitle" $subtitle
|
|
"image" $image
|
|
"width" $width
|
|
"height" $height
|
|
"imageStyle" $imageStyle
|
|
"tag" $tag
|
|
"tagType" $tagType
|
|
)
|
|
-}}
|