PHPackages                             pfefferle/wordpress-well-known-feeds - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. pfefferle/wordpress-well-known-feeds

ActiveWordpress-plugin[Utility &amp; Helpers](/categories/utility)

pfefferle/wordpress-well-known-feeds
====================================

&lt;link /&gt; 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”.

713PHP

Since Jul 28Pushed 3w ago2 watchersCompare

[ Source](https://github.com/pfefferle/wordpress-well-known-feeds)[ Packagist](https://packagist.org/packages/pfefferle/wordpress-well-known-feeds)[ RSS](/packages/pfefferle-wordpress-well-known-feeds/feed)WikiDiscussions main Synced 2w ago

READMEChangelogDependenciesVersions (1)Used By (0)

.well-known/feeds
=================

[](#well-knownfeeds)

`` 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](http://opml.org/) document with all feeds of the site, following [Dan Q's `.well-known/feeds` spec](https://github.com/Dan-Q/well-known-feeds). 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](https://www.ietf.org/archive/id/draft-nottingham-feed-menu-00.html).

What is in the list
-------------------

[](#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
--------------------

[](#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 says clients should ignore members they do not know, so this stays compatible.
- The JSON points at a schema (`feed-menu-schema.json`) based on Appendix A of the draft. I had to relax it a bit, so the extra members and the `$schema` field validate.
- Post formats without any posts are left out. The archive feed would be empty, so I don't advertise it.
- This is still early. The draft is a draft, and the OPML side is beta. Feedback and issues are welcome:

Filters
-------

[](#filters)

- `well_known_feed_types`: the list of feed types to expose.
- `well_known_feed_menu`: the whole JSON menu before it is served.

###  Health Score

23

—

LowBetter than 25% of packages

Maintenance62

Regular maintenance activity

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/2e3d56273f319d19d7492f8ba06a01fd64a5724e3553b2d1f2ac0f4e399b2cfa?d=identicon)[pfefferle](/maintainers/pfefferle)

---

Top Contributors

[![pfefferle](https://avatars.githubusercontent.com/u/2373?v=4)](https://github.com/pfefferle "pfefferle (16 commits)")

---

Tags

feedpluginrsswell-knownwordpresswordpress-plugin

### Embed Badge

![Health badge](/badges/pfefferle-wordpress-well-known-feeds/health.svg)

```
[![Health](https://phpackages.com/badges/pfefferle-wordpress-well-known-feeds/health.svg)](https://phpackages.com/packages/pfefferle-wordpress-well-known-feeds)
```

###  Alternatives

[bruli/php-git-hooks

Git hooks for PHP projects.

674372.7k5](/packages/bruli-php-git-hooks)[clickstorm/go-maps-ext

Google Maps Extension. Simply insert a google map Version 3 without jQuery, calculate a route, images for markers, style maps, KML, categories, responsive and many more.

24174.6k3](/packages/clickstorm-go-maps-ext)[stilliard/blmreader

BLM file format reader (for use with rightmove files)

2451.9k](/packages/stilliard-blmreader)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
