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 }} |