hugo の range 内の partial から.Site にアクセスできなくて困ったので、代替する方法を探した。

こんな感じ。 config.toml で Site.Params.tagicons を定義。

[Params.tagicons]
python = "icon-python"
tinkerer = "icon-python"
gulp = "icon-gulp"
ruby = "icon-ruby"
heroku = "icon-heroku"

partial 呼び出し。

{{ range .Params.tags }}
{{ partial "tags.html" (dict "tag" . "icons" $.Site.Params.tagicons) }}
{{ end }}

partial で使う。

<i class="{{ index .icons .tag }}" aria-hidden="true"></i>
{{ .tag }}
Functions
A list of Hugo template functions including examples.
Functions favicon http://gohugo.io/templates/functions/#dict
Functions