MPC RSS is a TYPO3 extension for displaying RSS and Atom feeds with automatic background updates, flexible grouping options, and pagination support. It features inline feed management directly within content elements and an isolated caching system that operates independently from the TYPO3 page cache.
Key Features
- Inline Feed Management - Add feeds directly in content elements without separate storage folders
- Automatic Updates - Background refresh via TYPO3 Scheduler or CLI command
- Isolated Caching - Independent RSS cache that does not affect page cache
- Multiple Grouping Modes - Organize feeds by category, source, date, or timeline
- Pagination - Handle large feed collections efficiently
- SEO-Friendly URLs - Speaking URLs via Route Enhancer configuration
System Requirements
- TYPO3 13.x or 14.x
- PHP 8.2 or higher
Installation
composer require mpc/mpc-rss
After installation, activate the extension in the Extension Manager and run database updates.
Quick Start
- Create a content element and select Plugin "MPC RSS Feed"
- Click "Add Feed" and enter RSS or Atom feed URLs
- Configure grouping mode and display options
- Save and view your page
Grouping Modes
Organize RSS feed items in different ways depending on your use case:
Category (Default)
Groups items by RSS category tags such as Politics, Technology, or Business. Best for topic browsing when feeds provide consistent category tags.
Source (Recommended)
Groups items by feed source name (e.g., BBC News, TechCrunch, The Guardian). Always consistent and requires no fallback complexity. Ideal for multi-source news aggregators.
Date
Groups items by time periods: Today, Yesterday, This Week, This Month. Best for chronological browsing, news monitoring, and archives.
None (Unified Timeline)
No grouping - all items sorted chronologically. Ideal for social media-style feeds or real-time monitoring.
Comparison
| Mode | Best For | Consistency | Complexity |
|---|---|---|---|
| Category | Topic browsing | Variable | Medium |
| Source | Multi-source aggregators | Always | Low |
| Date | Archives, time-based | Always | Low |
| None | Real-time, mobile | Always | Lowest |
Automatic Feed Updates
TYPO3 Scheduler (Recommended)
- Activate Scheduler Extension if needed: Admin Tools, Extensions, scheduler
- Navigate to System, Scheduler, Add Task
- Select Class: "Update RSS Feeds"
- Set Type: Recurring Task
- Set Frequency:
*/30 * * * *(every 30 minutes) - Set Cache Lifetime: 3600 (1 hour)
CLI Command
# Manual update
vendor/bin/typo3 mpcrss:updatefeeds
# With options
vendor/bin/typo3 mpcrss:updatefeeds --clear-cache
vendor/bin/typo3 mpcrss:updatefeeds --cache-lifetime=7200
# Crontab (alternative to scheduler)
*/30 * * * * cd /path/to/typo3 && vendor/bin/typo3 mpcrss:updatefeeds
How It Works
- Fetches all configured RSS feed URLs from the database
- Updates the
mpc_rsscache in the background - Failed feeds do not stop other feeds from updating
- Automatic deduplication of feed URLs
Recommended Settings
| Feed Type | Frequency | Cache Lifetime |
|---|---|---|
| News feeds | Every 15 min | 1800s (30 min) |
| Blogs | Every 30 min | 3600s (1 hour) |
| Daily digest | Hourly | 7200s (2 hours) |
Cache Isolation
The RSS cache operates independently from the TYPO3 page and system caches:
| Action | RSS Cache | Page/System Cache |
|---|---|---|
| Scheduler runs | Updated | Untouched |
| Clear page cache | Untouched | Cleared |
cache:flush --group=mpc_rss | Cleared | Untouched |
Page cache clearing does not affect RSS feeds - they remain cached for fast display.
SEO-Friendly URLs
URL Examples
- Before:
/links/rss-feeds?tx_mpcrss_feed%5BfilterCategory%5D=Politik - After:
/links/rss-feeds/politik/page-1
URL Patterns
/rss-feeds/- Main page/rss-feeds/politik- Category filter/rss-feeds/page-2- Pagination/rss-feeds/politik/page-2- Category with pagination
Configuration
Add the Route Enhancer to your site configuration (config/sites/[your-site]/config.yaml):
routeEnhancers:
MpcRssFeed:
type: Extbase
extension: MpcRss
plugin: Feed
routes:
- routePath: /
- routePath: '/page-{page}'
- routePath: '/{category}'
- routePath: '/{category}/page-{page}'
defaults:
page: '1'
requirements:
page: '\d+'
aspects:
category:
type: StaticValueMapper
map:
politik: Politik
wirtschaft: Wirtschaft
kultur: Kultur
page:
type: StaticRangeMapper
start: '1'
end: '100'
Custom Templates
Template Override via Site Settings
Configure custom template paths in Site Management, Settings, MPC RSS View Paths:
- Template Root Path:
EXT:your_sitepackage/Resources/Private/Templates/ - Partial Root Path:
EXT:your_sitepackage/Resources/Private/Partials/ - Layout Root Path:
EXT:your_sitepackage/Resources/Private/Layouts/
Template Override via TypoScript
plugin.tx_mpcrss {
view {
templateRootPaths.30 = EXT:your_sitepackage/Resources/Private/Templates/
partialRootPaths.30 = EXT:your_sitepackage/Resources/Private/Partials/
layoutRootPaths.30 = EXT:your_sitepackage/Resources/Private/Layouts/
}
}
Template Variables
Available in List.html:
{grouped}- Items grouped by category/source/date{categories}- All available category names{activeCategory}- Currently selected filter{showFilter}- Boolean: show navigation{paginate}- Boolean: pagination enabled{pagination}- Pagination data{settings}- Plugin settings
Feed Item Properties
{item.title}- Item title{item.description}- Item description{item.link}- Item link URL{item.date}- Publication date{item.categories}- Category tags{item.image}- Associated image{item.sourceName}- Feed source name{item.source}- Feed source URL
Navigation Customization
The category navigation automatically adapts to the grouping mode:
| Grouping Mode | Navigation Label | Shows |
|---|---|---|
| Category | "Filter by Category" | Topic categories |
| Source | "Filter by Source" | Feed sources |
| Date | "Filter by Date" | Time periods |
| None | (hidden) | No navigation |
Architecture
Inline Records (IRRE)
The extension uses inline records where feeds are stored directly with the content element, not in separate storage folders. This simplifies setup and improves user experience:
- Traditional pattern: Separate storage folder, create records, link to plugin (3-4 steps)
- MPC RSS pattern: Add plugin, click "Add Feed", done (2 steps)
Design Benefits
- Simpler setup and better user experience
- More intuitive data model
- Better portability (copy content element includes feeds)
- No storage page configuration errors
Technical Components
- FeedController - Handles feed display and filtering
- FeedService - Fetches and parses RSS/Atom feeds
- FeedRepository - Database access for feed records
- UpdateFeedsCommand - CLI command for feed updates
- UpdateFeedsTask - Scheduler task for automatic updates
Troubleshooting
Scheduler Not Running
- Check System, Scheduler for last execution time
- Setup scheduler cron:
*/5 * * * * /path/to/php vendor/bin/typo3 scheduler:run
Feeds Not Updating
vendor/bin/typo3 mpcrss:updatefeeds --clear-cache
vendor/bin/typo3 cache:flush --group=mpc_rss- Verify feed URLs are accessible
- Check logs: System, Log, filter by "mpc_rss"
404 Errors on Category Pages
- Verify category name exists in Route Enhancer mapping
- Check spelling matches exactly
- Clear all caches
License and Author
MPC RSS is released under the GPL-2.0-or-later license.
Developed by Matthias Peltzer.
Karnivool - Aozora
Australian prog rock band Karnivool is back with a second single, ‘Aozora’. The dark, energetic track combines complex rhythms with an intense atmosphere and marks the band's first new material in years. The lyrics are also impressive, but listen for yourself. ;o) On 6 February 2026, they will release their new album, ‘In Verses’.