Add per-section RSS feeds for the events section#19574
Draft
CamSoper wants to merge 2 commits into
Draft
Conversation
Resolves #11686. The events section (formerly "Resources") only had a single combined feed at /events/rss.xml that included unlisted and already-passed events, sorted oldest-first, with raw ISO pubDates. This adds two per-section feeds and fixes the combined one so all three match exactly what the events page lists: - /events/rss.xml all listed events, newest first - /events/rss-upcoming.xml upcoming events, soonest first - /events/rss-ondemand.xml on-demand recordings, newest first The upcoming/on-demand split mirrors the logic in partials/events/list-section.html (unlisted events excluded; upcoming while sortable_date + 24h is in the future, otherwise on-demand when a youtube_url recording exists). Shared filtering and channel rendering live in two new partials so the three feed templates stay thin. pubDates are now emitted as RFC-822, and the events pages advertise the feeds via <link rel="alternate"> auto-discovery tags in the head. Co-Authored-By: Claude <noreply@anthropic.com>
Collaborator
|
Your site preview for commit ce3df8a is ready! 🎉 http://www-testing-pulumi-docs-origin-pr-19574-ce3df8a0.s3-website.us-west-2.amazonaws.com |
The preview build showed /events/rss.xml rendering identical content to /events/rss-ondemand.xml (channel title "On-demand"). With three output formats sharing the application/rss+xml media type and the xml suffix, the bare events/rss.xml template name is ambiguous and Hugo resolved the rss format to the wrong template. Rename it to events/list.rss.xml so all three feed templates use the explicit list.<outputformat>.xml convention, which is Hugo's documented disambiguation for output formats that share a media type. Co-Authored-By: Claude <noreply@anthropic.com>
Collaborator
Lighthouse Performance ReportCommit: ce3df8a | Metric definitions
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves #11686.
Background
The issue asked for RSS feeds for the Resources section so feed-reader users (e.g. Feedly) could follow new content. Since then, "Resources" was renamed to Events (
/events/), and the old sub-sections it named (Videos, Pulumi TV, Whitepapers) no longer exist. The section is now organized into two groupings — Upcoming and On-demand — rendered bylayouts/partials/events/list-section.html.A combined feed already existed at
/events/rss.xml, but it includedunlistedevents and already-passed events with no recording (neither of which appear on the page), sorted oldest-first, and emitted raw ISOpubDates.Changes
Two new per-section feeds, plus a fix to the combined feed so all three match exactly what the events page lists:
/events/rss.xml/events/rss-upcoming.xml/events/rss-ondemand.xmllist-section.html:unlistedevents are excluded; an event is upcoming whilesortable_date + 24his in the future, otherwise on-demand when it has ayoutube_urlrecording.layouts/partials/events/feed-events.html) and channel rendering (layouts/partials/events/rss-channel.html) live in two new partials, so the three feed templates stay thin.pubDates are now emitted as RFC-822.url_slugas the item<link>/<guid>.<link rel="alternate" type="application/rss+xml">auto-discovery tags inhead.html(matching the blog's existing pattern).The two per-section feeds are wired up via custom
outputFormats(rssupcoming,rssondemand) inconfig/_default/config.yml, opted in through theoutputsfront matter ofcontent/events/_index.md.Verification
Built with Hugo 0.157.0 (extended) against a fixture set of events (future, past-with-recording, past-no-recording, unlisted, external):
rss-upcoming.xmlcontained only future-dated listed events;rss-ondemand.xmlonly past events with a recording;rss.xmlthe union.unlistedand past-no-recording events were absent from all three feeds.url_slugas the link/guid.pubDates rendered as RFC-822; the<?xml ?>declaration is the first line; all three feeds passxmllint --noout.https://claude.ai/code/session_01LTfBTXSzrfSVyjnRNL9g2k
Generated by Claude Code