Редактировать: Я создал репозиторий here, который проверяет ответ jibe ниже. Я просто получаю пустую страницу, когда я посещаю /animals
, поэтому любая помощь приветствуется!Список подкатегорий в GitHub Страницы
Это наблюдение на этот вопрос: Hierarchical Categories in GitHub Pages
В этом вопросе, я узнал, как просмотреть Сообщений конкретной иерархической категории. Теперь я пытаюсь выяснить, как перечислять подкатегории определенной иерархической категории.
Я использую Джекил на страницах GitHub, и я хочу, чтобы иметь иерархические категории, как это:
- животных -> млекопитающие -> Кошки -> _posts -> housecat.md, tiger.md
- животные -> млекопитающие -> собаки -> _posts -> poodle.md, doberman.md
- животных -> рептилии -> ящериц -> _posts -> iguana.md, chameleon.md
I» d, чтобы пользователи могли посетить /animals
и см. список подкатегорий (mammals
и reptiles
). Затем, если они перейдут на /animals/mammals
, они будут видеть cats
и dogs
, перечисленные в подкатегориях.
В настоящее время я делаю это вручную, помещая файл index.html
в каждую подкатегорию. Но это делает обновление вещей намного сложнее, чем должно быть.
Я пробовал следующий this answer, но это предназначено для одиночных тегов, а не для нескольких категорий.
Загвоздка в том, что любая конкретная категория не может быть уникальным, так что я могу иметь такие вещи, как это:
- животных -> млекопитающие ->летучих мышей -> _posts -> vampire.md, фрукты. мкр
- спорт -> бейсбол ->летучие мыши -> _posts -> wiffle.md, teeball.md
Я хотел бы также, чтобы иметь возможность определить frontmatter атрибуты в подкатегории, возможно, в Ind ex.html файл каждого? Например, файл animals->mammals->bats->index.html
будет содержать переменную фронтмакса thumbnail
со значением "VampireBat.jpg"
, а sports->baseball->bats->index.html
будет иметь thumbnail
"YellowWiffleBat.png"
. Я хотел бы иметь доступ к этим переменным с родительского уровня (чтобы показать миниатюру и ссылку на подкатегорию).
Моей первая мысль была, чтобы получить доступ к субкатегории непосредственно, как это:
{% for mammalType in site.categories.animals.mammals %}
<p>{{ mammalType.title }}</p>
<img src="((mammalType.thumbnail }}" />
{% endfor %}
Что я обобщаю с использованием категорий от самой страницы:
{% for subcategory in page.categories %}
<p>{{ subcategory.title }}</p>
<img src="((subcategory.thumbnail }}" />
{% endfor %}
Но это не работает вообще, поскольку site.categories.whatever
- это список всех сообщений этой категории, игнорируя любую иерархическую информацию.
Есть ли лучший способ приблизиться к этому, кроме как сделать это вручную?
Объясните свой код, пожалуйста. –
Там вы за Германа Доппеса. :) – Simpyll
Это именно то, что я искал. Спасибо! –