hugo-toha/layouts/partials/helpers/get-hero.html
Alexandre Neto 32c5c04632
Allow custom hero images Fixes #379 (#670)
Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2022-10-15 17:18:50 +00:00

24 lines
874 B
HTML

{{/* check if there is any hero image in the same folder as the markdown file */}}
{{ $heroImage := .Page.Resources.GetMatch "hero.{jpg,png,svg}"}}
{{/* if hero image is specified in the page front-matter, then use that */}}
{{ if .Params.hero }}
{{ $heroImage = resources.Get .Params.hero }}
{{ end }}
{{ .Scratch.Set "heroScratch" $heroImage }}
{{/* if hero image is not provided, then use the default hero image */}}
{{ if not $heroImage }}
{{ $heroImage := resources.Get "images/default-hero.jpg"}}
{{ .Scratch.Set "heroScratch" $heroImage }}
{{ end }}
{{ $heroImage := .Scratch.Get "heroScratch" }}
{{/* resize hero image. don't resize if the image is an svg */}}
{{ if and $heroImage (ne $heroImage.MediaType.SubType "svg") }}
{{ $heroImage := $heroImage.Resize "148x" }}
{{ end }}
{{/* return the hero image */}}
{{ return $heroImage.RelPermalink }}