35 lines
1.2 KiB
HTML
35 lines
1.2 KiB
HTML
{{/*
|
|
GetFeaturedImage
|
|
|
|
This partial gets the url for featured image for a given page.
|
|
|
|
If a featured_image was set in the page's front matter, then that will be used.
|
|
|
|
If not set, this will search page resources to find an image that contains the word
|
|
"cover", and if found, returns the path to that resource.
|
|
|
|
If no featured_image was set, and there's no "cover" image in page resources, then
|
|
this partial returns an empty string (which evaluates to false).
|
|
|
|
@return Permalink to featured image, or an empty string if not found.
|
|
|
|
*/}}
|
|
|
|
{{/* Declare a new string variable, $linkToCover */}}
|
|
{{ $linkToCover := "" }}
|
|
|
|
{{/* Use the value from front matter if present */}}
|
|
{{ if .Params.featured_image }}
|
|
{{ $linkToCover = .Params.featured_image }}
|
|
|
|
{{/* Find the first image with 'cover' in the name in this page bundle. */}}
|
|
{{ else }}
|
|
{{ $img := (.Resources.ByType "image").GetMatch "*cover*" }}
|
|
{{ with $img }}
|
|
{{ $linkToCover = .Permalink }}
|
|
{{ end }}
|
|
{{ end }}
|
|
|
|
{{/* return either a permalink, or an empty string. Note that partials can only have a single
|
|
return statement, so this needs to be at the end of the partial (and not in the if block) */}}
|
|
{{ return $linkToCover }} |