Classes
RSSGenerator
Generates RSS/Atom feeds for content syndication.
Creates rss.xml files with recent pages sorted b…
RSSGenerator
Generates RSS/Atom feeds for content syndication.
Creates rss.xml files with recent pages sorted by date, enabling readers to subscribe to site updates via RSS readers. Supports i18n per-locale feeds and respects page visibility settings.
Creation:
Direct instantiation: RSSGenerator(site)
- Created by PostprocessOrchestrator for RSS generation
- Requires Site instance with rendered pages
Attributes
| Name | Type | Description |
|---|---|---|
site |
— | Site instance with pages and configuration |
logger |
— | Logger instance for RSS generation events |
Relationships |
— |
|
Features |
— |
|
Methods 1
generate
Generate and write rss.xml to output directory.
Filters pages with dates, sort…
generate
def generate(self) -> None
Generate and write rss.xml to output directory.
Filters pages with dates, sorts by date (newest first), limits to 20 items, and writes RSS feed atomically to prevent corruption.
If no pages with dates exist, logs info and skips generation.
Internal Methods 2
__init__
Initialize RSS generator.
__init__
def __init__(self, site: Any) -> None
Initialize RSS generator.
Parameters 1
site |
Any |
Site instance |
_indent
Add indentation to XML for readability.
_indent
def _indent(self, elem: ET.Element, level: int = 0) -> None
Add indentation to XML for readability.
Parameters 2
elem |
ET.Element |
XML element to indent |
level |
int |
Current indentation level |