hugo/docs/content/en/functions/intersect.md
2022-11-17 16:16:19 +01:00

1 KiB

title linktitle description date publishdate lastmod categories menu keywords signature workson hugoversion relatedfuncs deprecated aliases
intersect intersect Returns the common elements of two arrays or slices, in the same order as the first array. 2017-02-01 2017-02-01 2017-02-01
functions
docs
parent
functions
collections
intersect
union
complement
symdiff
intersect SET1 SET2
false

A useful example is to use it as AND filters when combined with where:

AND filter in where query

{{ $pages := where .Site.RegularPages "Type" "not in" (slice "page" "about") }}
{{ $pages := $pages | union (where .Site.RegularPages "Params.pinned" true) }}
{{ $pages := $pages | intersect (where .Site.RegularPages "Params.images" "!=" nil) }}

The above fetches regular pages not of page or about type unless they are pinned. And finally, we exclude all pages with no images set in Page params.

See union for OR.