| | 2 | |
| | 3 | Currently, the oEmbed provider list only includes **WordPress.com** and its subdomains (`*.wordpress.com`, `wp.me`). Self-hosted WordPress.org sites are not registered as providers by default. |
| | 4 | |
| | 5 | ### ⚠️ Issues |
| | 6 | |
| | 7 | 1. **Reliance on discovery** |
| | 8 | |
| | 9 | * Each site must expose a `<link rel="alternate" …>` meta tag correctly, but certain themes or plugins can break this. |
| | 10 | * Without a fixed endpoint in the provider list, client applications need to perform discovery for every request, which introduces instability. |
| | 11 | |
| | 12 | 2. **Caching and proxy concerns** |
| | 13 | |
| | 14 | * Clients like Mastodon, Slack, and Discord typically consult the **oembed.com provider list** first. Since self-hosted WordPress sites aren’t listed, these clients must fall back to discovery. |
| | 15 | * If discovery fails, the result is often that no link preview card is generated. |
| | 16 | |
| | 17 | 3. **Compatibility over scalability** |
| | 18 | |
| | 19 | * Scalability itself is not the bottleneck here, but **compatibility** becomes inconsistent. |
| | 20 | * Example: embedding a WordPress.org blog URL may show a preview in some clients but fail entirely in others. |
| | 21 | |
| | 22 | --- |
| | 23 | |
| | 24 | 👉 This highlights that the real challenge for self-hosted WordPress oEmbed is not scaling, but ensuring **consistent compatibility across clients**. |