jekyllのタグのデータ構想
jekyllのタグにはsite.tags
でアクセスできる。 site.tags
は以下のようなイメージのハッシュである。
{タグA => [ページ1, ページ2, ページ3],
タグB => [ページ4, ページ5, ページ6],
タグC => [ページ7, ページ8, ページ9]}
タグの一覧を出力する
これを踏まえて。 サイトの全タグを一覧するLiquidテンプレートは以下のように書ける。
{% for tag in site.tags %}
{{ tag | first }}
{% endfor %}
Liquidではfor
でハッシュを走査すると配列が得られ[0]
の要素にキーが、[1]
の要素に値が格納される。
タグ名はキーなので、first
で先頭の要素のみ取り出してやることでタグの一覧が得られる。
タグが付いたページの一覧を出力する
site.tags
の値は、キーのタグが付けられたページの配列となっている。
以下はjekyll
タグが付けられたページをタイトルの一覧するLiquidテンプレートの例だ。
{% for post in site.tags['jekyll'] %}
{{ post.title }}
{% endfor %}