WP Manifestindependent plugin directory
manifest / utilities / wordpress-well-known-feeds

.well-known/feeds

<link /> is fine, but I feel like there should be a standard for a site, not a page, to share a “list of feeds associated with a site”.

by Matthias Pfefferle · github.com/pfefferle/wordpress-well-known-feeds · website

7stars
13composer installs
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/pfefferle/wordpress-well-known-feeds/archive/refs/heads/main.zip

Also on Packagist as pfefferle/wordpress-well-known-feeds:

composer require pfefferle/wordpress-well-known-feeds

Declares an update source (https://github.com/pfefferle/wordpress-well-known-feeds), so updates arrive through the plugin's own updater.

From the readme

.well-known/feeds is fine, but it only describes a single page. I feel like there should be a standard way for a site to share the list of feeds that belong to it. This plugin adds two well-known endpoints for that: - /.well-known/feeds: an OPML document with all feeds of the site, following Dan Q's .well-known/feeds spec. It ships with an XSL stylesheet, so it is also readable in a browser. - /.well-known/feed-menu.json: a JSON version, following draft-nottingham-feed-menu-00. What is in the list Both endpoints list, for every feed type registered in WordPress: - all posts - all comments - every post format that has content (Aside, Gallery, …) "Feed type" means whatever is registered, not just RSS and Atom. On a plain WordPress that is RSS, RSS 2.0, RDF and Atom. If other plugins add feeds (for example JSON Feed, or the ActivityStreams feeds from ActivityPub), those show up too. The variants of one source are grouped together. In the JSON menu they become the members of one feed object, in OPML they are nested under one outline. A few things to know - The feed-menu draft only defines rss and atom. The extra types (json, as1, as2, …) are added as extra members. The draft

Read the full README on GitHub →