feat(rss): полный текст и обложки в RSS-ленте, лимит 5 постов
- hugo.toml: ShowFullTextinRSS=true, [services.RSS] limit=5 - тема rDedInit rss.xml: prepend cover (figure.entry-cover, absURL) в content:encoded - openspec change rss-full-feed (план A реализован)
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
# RSS Full Feed for dedinit.ru
|
||||
|
||||
## Why
|
||||
|
||||
Блог dedinit.ru (Hugo 0.165, тема rDedInit/PaperMod) уже генерирует RSS-ленту
|
||||
(`public/index.xml`), но она неполноценна:
|
||||
|
||||
- **Лимит не задан** — в ленту попадают ВСЕ посты (сейчас 17), хотя типовой
|
||||
читатель RSS ожидает короткую ленту последних публикаций.
|
||||
- **Нет полного текста** — тема умеет выводить `<content:encoded>` (полный HTML
|
||||
контент поста) при параметре `site.Params.ShowFullTextinRSS`, но он не включён.
|
||||
Сейчас в `<description>` только summary, у части постов обрезанный HTML.
|
||||
- **Нет явных ссылок на медиа** — изображения (hero.svg и др.) рендерятся в
|
||||
абсолютные URL внутри HTML-контента, поэтому при включении полного текста
|
||||
медиа-ссылки появятся автоматически. Но если полный текст по какой-то причине
|
||||
недоступен, лента должна хотя бы содержать корректное описание.
|
||||
|
||||
Цель: сделать RSS-ленту пригодной для полного забирания контента постов
|
||||
(full-content syndication) — 5 последних постов с полным текстом и медиа-ссылками.
|
||||
|
||||
## What
|
||||
|
||||
1. Включить полный текст в RSS: `[params] ShowFullTextinRSS = true`.
|
||||
2. Задать лимит 5 постов: `[services.RSS] limit = 5`.
|
||||
3. Убедиться, что в `<item>` попадают: `<title>`, `<link>`, `<pubDate>`,
|
||||
`<description>` (описание или summary), `<content:encoded>` (полный HTML,
|
||||
включая абсолютные ссылки на медиа), `<guid>`.
|
||||
4. Fallback (план B, если полный текст окажется недоступен): добавить явные
|
||||
`description` в frontmatter постов и увеличить лимит до 10.
|
||||
|
||||
## Non-goals
|
||||
|
||||
- Не меняем дизайн/вёрстку сайта.
|
||||
- Не трогаем taxonomy RSS (категории/теги)-ленты.
|
||||
- Не добавляем новые форматы (Atom только как самоссылка, уже есть).
|
||||
|
||||
## Affected files
|
||||
|
||||
- `hugo.toml` — `[params] ShowFullTextinRSS`, `[services.RSS] limit`
|
||||
- (план B) `content/posts/*/index.md` — `description` в frontmatter
|
||||
|
||||
## Rollback
|
||||
|
||||
Откат = удалить две строки из `hugo.toml` (параметр `ShowFullTextinRSS` и
|
||||
`[services.RSS] limit`), пересобрать `hugo --minify` — вернётся прежнее поведение
|
||||
ленты без полного текста и без лимита.
|
||||
Reference in New Issue
Block a user