Files
dedinit.ru/openspec/changes/archive/2026-09-25-archive-by-year-month/proposal.md
T

36 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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).