Artificial Poets Reusable Components CDN
·
Turn your WordPress site into a content delivery network for reusable components — JSON, text, and files — shared across sites.
WP Components lets one WordPress site act as a Host that publishes a Library of named pieces of content — a logo, a tagline, a social-links JSON blob, a privacy notice — and any number of other sites act as Receivers that subscribe to that Host and consume those components instantly.
Every component has a stable slug, a type (json, text, or file), a per-component cache TTL, and an auto-incrementing version number that becomes its HTTP ETag. Subscribers fetch the latest version on demand and revalidate cheaply with 304 Not Modified for unchanged content.
A single site can also act as both Host and Receiver — publish your own Library while subscribing to one or more remote Hosts.
Use cases
- Keep brand assets (logo, favicon, tagline, contact info) in sync across a fleet of WordPress sites without copy-paste.
- Centralise structured data (footer links, locations, pricing tables) so updating once propagates everywhere.
- Serve component content from a dedicated CDN subdomain via a thin reverse-proxy layer.
- Pull versioned content into a headless frontend (Next.js, Astro, Vercel) with stable cache semantics.
Key features
- Three component types — JSON, plain text, and file (proxies URLs through the REST endpoint).
- Two independent capabilities — publish your Library and/or subscribe to a remote Host. Toggle each side on or off in Settings.
- HTTP cache headers — every
/rawresponse sendsETag,Last-Modified, andCache-Control: public, max-age=<TTL>, must-revalidate. Conditional requests get304 Not Modified. - Per-IP rate limiting — 120 requests per 60 seconds on the host endpoints.
- CORS control — open, allowlist, or denylist by domain (with
*.example.comwildcard support). - Optional authentication — require Application Passwords on either side independently.
- Source connection tester — verify a Host URL from the Settings page before saving.
- Native admin UI — built on WordPress admin patterns, fully translatable.
REST endpoints (Host mode)
GET /wp-json/wp-components/v1/components— list all published componentsGET /wp-json/wp-components/v1/components/{slug}— fetch one as JSON metadataGET /wp-json/wp-components/v1/components/{slug}/raw— fetch with type-appropriateContent-Type(text/plain, application/json, or proxied file bytes)