У меня есть требование создать страницу раздела, которая состоит из некоторого статического материала заголовка, статического нижнего колонтитула и нескольких разделов контента, управляемого пользователем. Контент, управляемый пользователем, является фрагментарным и не должен иметь постоянную ссылку.
Я подумал, что хорошим способом сделать это может быть использование безголовых страниц .
Похоже, для этого эти фрагменты должны иметь каталог с index.md
и должны быть доступны с помощью оператора .Site.GetPage
.
Я пытаюсь понять, как использовать .Site.GetPage
, чтобы получить список страниц для повторения. Там будет 2..n пользовательских разделов, и я не хочу перестраивать шаблон раздела, если количество модулей содержимого изменится.
Я предполагаю, что либо есть какая-то магия для запроса нескольких страниц с использованием .Site.GetPage
, либо для этого есть совершенно другой оператор.
Это, или я совершенно не понял, как использовать безголовые страницы.
Вот мой шаблон для раздела (../layouts/the-range/section.html
):
{{ define "main" }}
<div id="page-wrapper">
<div class="halfhero" id="map"></div>
</div>
{{ $sections := .Site.GetPage "/the-range/*" }}
<!-- leaf content at .../content/the-range/*/*.md -->
{{ range $sections }}
<section class="range-section">
<div class="section-content">
{{.Content}}
</div>
<img src="{{.Site.BaseURL}}{{.Params.images}}">
</section>
{{ end }}
{{ end }}
Безголовый контент - это просто серия файлов разметки в виде листовых пакетов.