36 lines
1.9 KiB
Markdown
36 lines
1.9 KiB
Markdown
# Archive by Year/Month
|
||
|
||
## Problem Statement
|
||
|
||
Страница «Архив» (меню → `/posts/`) сейчас показывает плоский список всех
|
||
постов с пагинацией по 10 (layout `list.html`). При ~100+ постах это
|
||
неудобно: нет обзора по годам и месяцам, нельзя быстро найти пост по
|
||
периоду.
|
||
|
||
## Why
|
||
|
||
Hugo умеет группировать посты по годам/месяцам из коробки (GroupByDate /
|
||
GroupByPublishDate). Тема rDedInit уже содержит готовый layout
|
||
`_default/archives.html` и стили `archive.css` — нужно лишь переключить
|
||
секцию `/posts/` на этот layout. Расширять тему не требуется.
|
||
|
||
## Proposed Solution
|
||
|
||
Добавить `content/posts/_index.md` с frontmatter `layout: archives` (и
|
||
title/description). Hugo автоматически применит `archives.html` к листингу
|
||
секции `/posts/`, который сгруппирует посты по годам и месяцам с
|
||
счётчиками и якорями.
|
||
|
||
## Alternative Solutions
|
||
|
||
- Написать свой layout `layouts/posts/list.html` — избыточно, тема уже
|
||
имеет готовый архив.
|
||
- Использовать отдельную страницу `/archive/` — меняет URL и меню; текущий
|
||
пункт меню «Архив» ведёт на `/posts/`, менять не нужно.
|
||
|
||
## Impact
|
||
|
||
- Изменяется только рендер `/posts/` (list → archives).
|
||
- URL постов и permalinks не меняются.
|
||
- RSS секции `/posts/` сохраняется (archives.html не влияет на rss.xml).
|
||
- Деплой — автоматический через Gitea Actions (push в main). |