Customize the feed
Each podcast's feed is the Feed display of the Podcast Feed View. Edit it at Structure → Views → Podcast Feed (/admin/structure/views/view/podcast_feed).
Change the View with care once the podcast is listed in directories. Apps read the feed every time they refresh, so a broken setting reaches subscribers quickly.
How the View builds the feed
| Part | Default |
|---|---|
| Path | podcast/%/feed.xml, where % is the podcast ID |
| Contextual filter | Podcast ID |
| Filters | Published episodes of a published podcast |
| Sort | Authored on, newest first |
| Pager | None, so every episode is included |
| Caching | Tag based; saving a podcast or episode refreshes the feed |
The Format is Podcast RSS Feed, which writes the channel tags. Show is Podcast Episode Fields, which writes one <item> per episode. Each has a Settings dialog that maps View fields to feed tags.
Channel tags
Open Format: Podcast RSS Feed → Settings.
| Setting | Feed tag | Default field |
|---|---|---|
| Title field | title | Title |
| Description field | description | Summary |
| Subtitle field | itunes:subtitle | Subtitle |
| Summary field | itunes:summary | Summary |
| Image field | itunes:image | Image, using the podcast_3000x3000 image style |
| Copyright field | copyright | Copyright |
| Type field | itunes:type | Type |
| Owner field, Email field | itunes:owner with itunes:name and itunes:email | Author, Email |
| Author field | itunes:author | Author |
| Category field | One category per comma-separated value | Category |
| Itunes Category field | itunes:category, nested under its parent category | iTunes Category |
| Block field | itunes:block | None |
| Explicit field | itunes:explicit | Explicit |
| Complete field | itunes:complete | Complete |
| Funding field | podcast:funding | Funding |
| Publication date field | pubDate | Authored on |
A tag is left out when its field is empty. Creator field is not used in the feed.
Episode tags
Open Show: Podcast Episode Fields → Settings.
| Setting | Feed tag | Default field |
|---|---|---|
| Title field | title, itunes:title | Label |
| Link field | link | Link to the episode's page |
| Description field | description, content:encoded | Shownotes |
| File field, File size field, Mimetype field | enclosure with url, length, type | Audio File, with the URL to file, File Length, and Mimetype formatters |
| Duration field | itunes:duration | Duration, read from the audio file when the episode is saved |
| Image field | itunes:image | Image, using the podcast_3000x3000 image style |
| Type field | itunes:episodeType | Type |
| Author field | itunes:author | Author |
| Explicit field | itunes:explicit | Explicit |
| Keywords field | itunes:keywords | Keywords |
| Publication date field | pubDate | Authored on |
| Episode number field | itunes:episode | Episode Number |
| GUID settings | guid | Audio File URL, not marked as a permalink |
Dates must be in RFC 2822 format. The default date fields use the custom format D, d M Y H:i:s T; keep it if you replace them.
To count downloads, switch the File field's formatter to Download Tracker URL. See Analytics.
Use a different field
- Add the field under Fields on the Feed display. Choose This feed (override) if the change should not affect other displays.
- Pick a formatter that outputs plain text or a plain URL, such as URL to file or Plain text. Markup inside a tag breaks some apps.
- Select the field in the channel or episode settings, then Apply and Save the View.
The settings only map fields to the tags listed above. Adding a tag that is not in the lists needs a template override or custom code.
Limit the number of episodes
The feed lists every episode by default. To shorten it, set the Feed display's Pager to Display a specified number of items. Apps only show what the feed contains, so older episodes disappear from new subscribers' lists.
Episode GUIDs
Podcast apps use each item's guid to recognize an episode. By default it is the audio file's URL. Replacing an episode's audio file with a file at a different URL changes the GUID, and apps may show the episode again as new.
For a GUID that never changes, add the episode's UUID field to the Feed display, select it under GUID settings, and leave GUID is permalink unchecked. Do this before the podcast is listed in directories: changing the GUID of existing episodes makes every app show them as new.
Change the feed template
The feed uses the views-view-podcast-rss.html.twig template from the module's templates directory. Copy it into your theme's templates directory and clear caches to override the channel markup. Episode items use Views' standard RSS row template.