mirror of
				https://github.com/Wonderfall/hugo-WonderMod.git
				synced 2025-10-30 19:35:26 +01:00 
			
		
		
		
	lazy load cover images in lists only
This commit is contained in:
		| @@ -65,7 +65,7 @@ | ||||
|  | ||||
| <article class="{{ $class }}"> | ||||
|   {{- $isHidden := (.Param "cover.hiddenInList") | default (.Param "cover.hidden") | default false }} | ||||
|   {{- partial "cover.html" (dict "cxt" . "IsHome" true "isHidden" $isHidden) }} | ||||
|   {{- partial "cover.html" (dict "cxt" . "IsSingle" false "isHidden" $isHidden) }} | ||||
|   <header class="entry-header"> | ||||
|     <h2> | ||||
|       {{- .Title }} | ||||
|   | ||||
| @@ -22,7 +22,7 @@ | ||||
|     {{- end }} | ||||
|   </header> | ||||
|   {{- $isHidden := (.Param "cover.hiddenInSingle") | default (.Param "cover.hidden") | default false }} | ||||
|   {{- partial "cover.html" (dict "cxt" . "IsHome" false "isHidden" $isHidden) }} | ||||
|   {{- partial "cover.html" (dict "cxt" . "IsSingle" true "isHidden" $isHidden) }} | ||||
|   {{- if (.Param "ShowToc") }} | ||||
|   {{- partial "toc.html" . }} | ||||
|   {{- end }} | ||||
|   | ||||
| @@ -1,9 +1,10 @@ | ||||
| {{- with .cxt}} {{/* Apply proper context from dict */}} | ||||
| {{- if (and .Params.cover.image (not $.isHidden)) }} | ||||
| {{- $alt := (.Params.cover.alt | default .Params.cover.caption | plainify) }} | ||||
| {{- $loading := cond $.IsSingle "eager" "lazy" }} | ||||
| <figure class="entry-cover"> | ||||
|     {{- $responsiveImages := (.Params.cover.responsiveImages | default site.Params.cover.responsiveImages) | default true }} | ||||
|     {{- $addLink := (and site.Params.cover.linkFullImages (not $.IsHome)) }} | ||||
|     {{- $addLink := (and site.Params.cover.linkFullImages $.IsSingle) }} | ||||
|     {{- $pageBundleCover     := (.Resources.ByType "image").GetMatch (printf "*%s*" (.Params.cover.image)) }} | ||||
|     {{- $globalResourcesCover := (resources.ByType "image").GetMatch (printf "*%s*" (.Params.cover.image)) }} | ||||
|     {{- $cover := (or $pageBundleCover $globalResourcesCover)}} | ||||
| @@ -17,7 +18,7 @@ | ||||
|         {{- end -}} | ||||
|         {{- $prod := (hugo.IsProduction | or (eq site.Params.env "production")) }} | ||||
|         {{- if (and (in $processableFormats $cover.MediaType.SubType) ($responsiveImages) (eq $prod true)) }} | ||||
|         <img loading="lazy" srcset="{{- range $size := $sizes -}} | ||||
|         <img loading="{{$loading}}" srcset="{{- range $size := $sizes -}} | ||||
|                         {{- if (ge $cover.Width $size) -}} | ||||
|                         {{ printf "%s %s" (($cover.Resize (printf "%sx" $size)).Permalink) (printf "%sw ," $size) -}} | ||||
|                         {{ end }} | ||||
| @@ -25,16 +26,16 @@ | ||||
|             sizes="(min-width: 768px) 720px, 100vw" src="{{ $cover.Permalink }}" alt="{{ $alt }}"  | ||||
|             width="{{ $cover.Width }}" height="{{ $cover.Height }}"> | ||||
|         {{- else }}{{/* Unprocessable image or responsive images disabled */}} | ||||
|         <img loading="lazy" src="{{ (path.Join .RelPermalink .Params.cover.image) | absURL }}" alt="{{ $alt }}"> | ||||
|         <img loading="{{$loading}}" src="{{ (path.Join .RelPermalink .Params.cover.image) | absURL }}" alt="{{ $alt }}"> | ||||
|         {{- end }} | ||||
|     {{- else }}{{/* For absolute urls and external links, no img processing here */}} | ||||
|         {{- if $addLink }}<a href="{{ (.Params.cover.image) | absURL }}" target="_blank" | ||||
|             rel="noopener noreferrer">{{ end -}} | ||||
|             <img loading="lazy" src="{{ (.Params.cover.image) | absURL }}" alt="{{ $alt }}"> | ||||
|             <img loading="{{$loading}}" src="{{ (.Params.cover.image) | absURL }}" alt="{{ $alt }}"> | ||||
|     {{- end }} | ||||
|     {{- if $addLink }}</a>{{ end -}} | ||||
|     {{/*  Display Caption  */}} | ||||
|     {{- if not $.IsHome }} | ||||
|     {{- if $.IsSingle }} | ||||
|         {{ with .Params.cover.caption }}<p>{{ . | markdownify }}</p>{{- end }} | ||||
|     {{- end }} | ||||
| </figure> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Aditya Telange
					Aditya Telange