---
tags:
  - foo
---
{{/* Taxonomy */}}
{{"https://gohugo.io/variables/taxonomy/#use-site-taxonomies-outside-of-taxonomy-templates" | markdownify }}
{{"https://gohugo.io/variables/taxonomy/" | markdownify }}

10)
{{ .Site.Taxonomies }}

20)
{{ range $myKey, $myValue := .Site.Taxonomies}}
  {{ printf `%+v (T:%T) => %+v (T:%T) ` $myKey $myKey $myValue $myValue }}
  {{- range $myKey, $myValue := .}}
    {{ printf `* %+v (T:%T) => %+v (T:%T) ` $myKey $myKey $myValue $myValue }}
  {{- end}}
{{- end}}

31){{ .Site.Taxonomies.tags }}
32){{ .Site.Taxonomies.categories }}

{{`same as`}}
33){{ index .Site.Taxonomies "tags" }}
34){{ index .Site.Taxonomies "categories" }}
{{- $myTaxonomyName := "categories" }}
35){{ index .Site.Taxonomies $myTaxonomyName }}


{{`List Terms by Taxonomy with Pages `}}
40)
{{- range $myTaxonomyName, $myTaxonomyPagesMap := .Site.Taxonomies }}
{{ printf "%+v " $myTaxonomyName }}
  {{- range $term, $value := $myTaxonomyPagesMap }}
    {{ printf "%+v #Pages:%+v" $term (len $value.Pages) }}
    {{- range $value.Pages }}
      {{ printf "%+v" .RelPermalink }} {{/* . is a page */}}
    {{- end}}
  {{- end}}
{{- end}}

{{`List Taxonomies`}}
50)
{{- range $myTaxonomyName, $myTaxonomyPagesMap := .Site.Taxonomies }}
  {{ printf "%+v " $myTaxonomyName }}
{{- end}}

{{`List Term foo in Taxonomy tags with Pages `}}
60)
{{- range (.Site.Taxonomies.tags).foo }}
  {{ printf "%+v" .RelPermalink }} {{/* . is a page */}}
{{- end}}

{{`same as`}}
61)
{{- range (index .Site.Taxonomies.tags "foo" ) }}
  {{ printf "%+v" .RelPermalink }}  {{/* . is a page */}}
{{- end}}

{{`List Terms in a Taxonomy (e.g. categories) with Pages `}}
70)
{{- $myTaxonomyName := "categories" }}
{{- range $term, $value := (index .Site.Taxonomies $myTaxonomyName) }}
  {{ printf "%+v #Pages:%+v" $term (len $value.Pages) }}
    {{- range $value.Pages }}
      {{ printf "%-40v | %-20v" .RelPermalink .Name }} {{/* . is a page */}}
  {{- end}}
{{- end}}


{{`List just the Terms (no link) of a Pages `}}
80)
{{ range $myTaxonomyName, $term := .Site.Taxonomies }}
  {{- if (index $.Params $myTaxonomyName)}}
    {{ $myTaxonomyName }}
    {{- range (index $.Params $myTaxonomyName) }}
      {{ . }}
    {{- end }}
  {{- end }}
{{- end }}

<hr>
{{`just curious ...`}}
{{ printf `%+v
T:%T
#v:%#v` .Site.Taxonomies .Site.Taxonomies .Site.Taxonomies }}


https://gohugo.io/variables/taxonomy/#use-site-taxonomies-outside-of-taxonomy-templates
https://gohugo.io/variables/taxonomy/

10)
TaxonomyList(3)

20)

  categories (T:string) => map[hello-word:[WeightedPage(0,"foobar") WeightedPage(0,"list_all_01") WeightedPage(0,"mySite")]] (T:hugolib.Taxonomy) 
    * hello-word (T:string) => [WeightedPage(0,"foobar") WeightedPage(0,"list_all_01") WeightedPage(0,"mySite")] (T:hugolib.WeightedPages) 
  countries (T:string) => map[] (T:hugolib.Taxonomy) 
  tags (T:string) => map[foo:[WeightedPage(0,"") WeightedPage(0,"mySite") WeightedPage(0,"Title")] bar:[WeightedPage(0,"mySite") WeightedPage(0,"Title")]] (T:hugolib.Taxonomy) 
    * bar (T:string) => [WeightedPage(0,"mySite") WeightedPage(0,"Title")] (T:hugolib.WeightedPages) 
    * foo (T:string) => [WeightedPage(0,"") WeightedPage(0,"mySite") WeightedPage(0,"Title")] (T:hugolib.WeightedPages) 

31)map[foo:[WeightedPage(0,"") WeightedPage(0,"mySite") WeightedPage(0,"Title")] bar:[WeightedPage(0,"mySite") WeightedPage(0,"Title")]]
32)map[hello-word:[WeightedPage(0,"foobar") WeightedPage(0,"list_all_01") WeightedPage(0,"mySite")]]

same as
33)map[foo:[WeightedPage(0,"") WeightedPage(0,"mySite") WeightedPage(0,"Title")] bar:[WeightedPage(0,"mySite") WeightedPage(0,"Title")]]
34)map[hello-word:[WeightedPage(0,"foobar") WeightedPage(0,"list_all_01") WeightedPage(0,"mySite")]]
35)map[hello-word:[WeightedPage(0,"foobar") WeightedPage(0,"list_all_01") WeightedPage(0,"mySite")]]


List Terms by Taxonomy with Pages 
40)
categories 
    hello-word #Pages:3
      /HugoTemplateCodePlyGnd/examples/variables/ 
      /HugoTemplateCodePlyGnd/discourses/taxonomy/list_all_01/ 
      /HugoTemplateCodePlyGnd/examples/variables/Site/ 
countries 
tags 
    bar #Pages:2
      /HugoTemplateCodePlyGnd/examples/variables/Site/ 
      /HugoTemplateCodePlyGnd/examples/variables/FrontMatterVariables/ 
    foo #Pages:3
      /HugoTemplateCodePlyGnd/examples/variables/Taxonomy/ 
      /HugoTemplateCodePlyGnd/examples/variables/Site/ 
      /HugoTemplateCodePlyGnd/examples/variables/FrontMatterVariables/ 

List Taxonomies
50)
  categories 
  countries 
  tags 

List Term foo in Taxonomy tags with Pages 
60)
  /HugoTemplateCodePlyGnd/examples/variables/Taxonomy/ 
  /HugoTemplateCodePlyGnd/examples/variables/Site/ 
  /HugoTemplateCodePlyGnd/examples/variables/FrontMatterVariables/ 

same as
61)
  /HugoTemplateCodePlyGnd/examples/variables/Taxonomy/  
  /HugoTemplateCodePlyGnd/examples/variables/Site/  
  /HugoTemplateCodePlyGnd/examples/variables/FrontMatterVariables/  

List Terms in a Taxonomy (e.g. categories) with Pages 
70)
  hello-word #Pages:3
      /HugoTemplateCodePlyGnd/examples/variables/ | foobar               
      /HugoTemplateCodePlyGnd/discourses/taxonomy/list_all_01/ | list_all_01          
      /HugoTemplateCodePlyGnd/examples/variables/Site/ | mySite               


List just the Terms (no link) of a Pages 
80)

    tags
      foo


just curious ... TaxonomyList(3) T:hugolib.TaxonomyList #v:hugolib.TaxonomyList{"categories":hugolib.Taxonomy{"hello-word":hugolib.WeightedPages{hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429c82f00)}, hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429d1e500)}, hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429c9aa00)}}}, "countries":hugolib.Taxonomy{}, "tags":hugolib.Taxonomy{"foo":hugolib.WeightedPages{hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429cca500)}, hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429c9aa00)}, hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429c83400)}}, "bar":hugolib.WeightedPages{hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429c9aa00)}, hugolib.WeightedPage{Weight:0, Page:(*hugolib.Page)(0xc429c83400)}}}}