hugo/content/en/hugo-pipes/resource-from-template.md
Bjørn Erik Pedersen b9bd35d72e Squashed 'docs/' content from commit fdea5430f
git-subtree-dir: docs
git-subtree-split: fdea5430f89dfd849d39212abdf5ace0a4763e5a
2019-10-21 10:22:28 +02:00

1,016 B
Executable file

title linkTitle description date publishdate lastmod categories keywords menu weight sections_weight draft
Creating a resource from template Resource from Template Hugo Pipes allows the creation of a resource from an asset file using Go Template. 2018-07-14 2018-07-14 2018-07-14
asset management
docs
parent weight
pipes 80
80 80 false

In order to use Hugo Pipes function on an asset file containing Go Template magic the function resources.ExecuteAsTemplate must be used.

The function takes three arguments, the resource object, the resource target path and the template context.

// assets/sass/template.scss
$backgroundColor: {{ .Param "backgroundColor" }};
$textColor: {{ .Param "textColor" }};
body{
	background-color:$backgroundColor;
	color: $textColor;
}
// [...]
{{ $sassTemplate := resources.Get "sass/template.scss" }}
{{ $style := $sassTemplate | resources.ExecuteAsTemplate "main.scss" . | resources.ToCSS }}