Sectionリストページと_index.mdについて。

AAAセクションの全ページをリスト化しつつ、中身の_index.mdリストも作りたい。

AAA
– A1
---- _index.md
---- 123.md
---- 456.md
– A2
---- _index.md
---- 123.md
---- 456.md

A1とA2の中に沢山のページがあるため、それぞれを_index.mdでリスト化しました。
_index.mdが無ければAAAセクションの全ページリストは出来るのですが、
_index.mdのリストを作ると、AAAセクションリストページの表示がおかしくなってしまう・・・。



など試しましたが、上手くいかず・・・良い方法は無いでしょうか。
よろしくお願いします。

range .Site.RegularPagesにすれば、_index.mdを無視することが出来た。
しかし、他のセクションも呼ばれてしまった。
混乱している。

_index.md のリスト(セクションのリスト)は .Sections で取得できます。

{{ range .Sections }}
  {{ .Title }}
{{ end }}

.CurrentSection も必要になるかもです。

参考になりそうな日本語記事を置いておきます。

{{ range .Sections }}だと何も表示されず。
{{ range .Pages. }}で表示されます。

section.htmlにて。

{{ range (where .Site.Pages “Section” “セクション名”)}}
セクション名を書けば機能してくれるけど、他のセクションはどうしよう・・・。
よく分からなくなってきた。

ちょっと情報少なくて状況がつかめないのでなんとも言えません…

_index.md
個別にレイアウト指定、{{ range .Pages }}で問題なく機能している。

section.html
range .Pages _index.mdのタイトルが表示されるだけ。
range .RegularPages 何も表示されない。
range .Site.RegularPages 他のセクションまでも表示されてしまう。BBBなど

.CurrentSection range .Pagesと同じ。_index.mdのタイトルが表示されるだけ。他のSection系も機能せず。

range (where .Site.RegularPages “Section” “セクション名記入”)
セクション名を記入すれば機能する。
完成系一歩手前。
セクション名を指定記入しなければ機能せず、他のセクションは・・・。

まとめてみました。

自己解決。
section.html
{{ range ( site.GetPage .Section ).RegularPagesRecursive}}
_index.mdがあっても、完璧なSectionリストが作れた。

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.