Skip to content

Build the WordPress-native headless docs plugin #19

Description

@chubes4

Goal

Turn an existing WordPress site into the editorial control plane for a static documentation site served from docs.example.com.

Product contract

  • Register an admin-visible, REST-enabled, hierarchical documentation CPT that is not publicly queryable and has no WordPress frontend rewrite or archive.
  • Use WordPress taxonomies and ordering for collections, topics, navigation, and static information architecture.
  • Replace WordPress view/preview URLs with canonical or preview URLs on the configured docs hostname.
  • Add a deterministic Markdown synchronization boundary suitable for PushMD: stable document identity, frontmatter, taxonomy relationships, hierarchy, ordering, status, and content hashes.
  • Produce a provider-neutral publication manifest consumed by Blume or another static builder. Hosting remains an adapter; no Spacefast, Hetzner, Pressable, or WordPress.com semantics belong in the core plugin.
  • Provide explicit preview/approve semantics for import/pull operations. Git acceptance and deployment remain reviewable operations rather than direct pushes from a content edit.
  • Reuse this repository’s existing Blume frontend as the first consumer and preserve Git Markdown as the accepted publication record.

Initial vertical slice

Ship a distributable plugin package in this repository with deterministic automated coverage for registration, frontend escape behavior, taxonomy serialization, Markdown export/import round trips, conflict detection, and publication manifests. Document installation and the docs.example.com workflow.

The implementation builds on #14 and PR #18.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions