Разбор Джекилла Категории

Я создал простой блог, основанный на движке Jekyll, но мне нужна еще одна функция, чтобы сделать его действительно завершенным.

В Jekyll родительские каталоги сообщений являются неявными "ярлыками" или "категориями". Итак, если бы я должен был создать пост в структуре каталогов

/computers/scm/git 

в итоге получилось бы 3 ярлыка (компьютеры, scm, git)

В моем блоге я создал несколько страниц:

/computers/index.html
/computers/scm/index.html
/computers/scm/git/index.html

и на этих страницах явно перечислены сообщения в соответствующих категориях, так что /computers/index.html отображает ссылки на все сообщения в / computers, / computers / sc и / computers / scm / git... и аналогичным образом в будущем. К сожалению, категории не являются составными в Jekyll, поэтому "/computers/scm/index.html" выполняет итерации по тому же набору сообщений, что и "/sandwiches/scm/index.html" …

Теперь я хотел бы автоматически создать карту сайта со списком всех категорий, предоставляя ссылки на все страницы, которые я создал. Jekyll включает в себя конструкцию site.categories, которую я могу перебрать, которая прекрасно работает для всех категорий верхнего уровня. Проблема в том, что когда появляется "scm", отсутствует "/scm/index.html" - это должен быть "/computers/scm/index.html".

Я не уверен, что смогу исправить это поведение - какие типы расширений я могу написать, чтобы получить обе иерархические категории и автоматически генерировать карту сайта для моих страниц со списком?

В моих самых смелых мечтах я хотел бы иметь возможность пометить сообщение как / a / b / c и связать его с ярлыками / a, / a / b и / a / b / c, а затем создавать страницы которые перебирают именно эти наборы сообщений. Мне нужна организация сайта, чтобы перейти от общего к частному.

Должен ли я попробовать другой двигатель генерации статического электричества?

1 ответ

Вам нужно использовать плагины Jekyll. Для поддержки категорий в моем блоге я использую один из них.

Если вы являетесь пользователем Github Pages, вы должны заметить, что GP не поддерживает плагины по соображениям безопасности. Чтобы избежать этого, вы можете использовать идеи из этого блога.


В качестве альтернативы вы можете использовать Octopress, основанный на Jekyll.

Другие вопросы по тегам