How diecieventi/system-markdown-alternate works
System Markdown Alternate is a WordPress plugin that serves post-derived Markdown at .md URLs and through content negotiation. Its main workflow resolves and validates a request, renders cleaned post content, adds configured metadata, converts the result, and returns it with HTTP representation and cache handling. Separate branches cover settings, discovery, builder/ACF integrations, and optional traffic and LiteSpeed features. The README documents capabilities beyond the sampled excerpts; those branches are included where paths are supported, without asserting unverified internal call details.
Main entry points: MarkdownController.php Markdown controller · ContentRenderer.php Content renderer · MetadataBuilder.php Front matter · AdminSettings.php Admin settings
Components 22
Request and response
- Plugin bootstrap
system-markdown-alternate/system-markdown-alternate.php - Markdown controller
system-markdown-alternate/src/MarkdownController.php - Accept negotiation
system-markdown-alternate/src/AcceptNegotiator.php - Post eligibility
system-markdown-alternate/src/PostSupport.php - Markdown cache
system-markdown-alternate/src/Cache.php
Content production
- Content renderer
system-markdown-alternate/src/ContentRenderer.php - Markdown conversion
system-markdown-alternate/src/MarkdownConverter.php - Front matter
system-markdown-alternate/src/MetadataBuilder.php - Custom fields
system-markdown-alternate/src/MetaFields.php - Builder detection
system-markdown-alternate/src/BuilderDetector.php - Builder adapters
system-markdown-alternate/src/BuilderAdapter.php - Bricks rendering
system-markdown-alternate/src/BricksAdapter.php
Settings and discovery
- Admin settings
system-markdown-alternate/src/AdminSettings.php - Discovery shortcodes
system-markdown-alternate/src/Shortcodes.php - Markdown actions
system-markdown-alternate/src/MarkdownActions.php
Integrations and operations
- ACF integration
system-markdown-alternate/src/AcfIntegration.php - Dynamic tags
system-markdown-alternate/src/DynamicTags.php - WooCommerce compatibility
system-markdown-alternate/src/WooCommerceCompat.php - Hit counter
system-markdown-alternate/src/HitCounter.php - LiteSpeed compatibility
system-markdown-alternate/src/LiteSpeedCompat.php
Other components
- HTTP client
- WordPress runtime
Connections 25
- HTTP client → WordPress runtime: sends request
- WordPress runtime → Plugin bootstrap: loads plugin
- Plugin bootstrap → Markdown controller: boots
- HTTP client → Markdown controller: requests Markdown
- Markdown controller → Accept negotiation: checks Accept
- Markdown controller → Post eligibility: checks eligibility
- Markdown controller → Markdown cache: reads or writes
- Markdown controller → Content renderer: builds content
- Markdown controller → Front matter: builds front matter
- Content renderer → WordPress runtime: renders blocks
- Content renderer → Builder detection: detects builder
- Builder detection → Builder adapters: selects adapter
- Builder adapters → Bricks rendering: dispatches Bricks posts
- Content renderer → Markdown conversion: converts HTML
- Front matter → Custom fields: reads configured fields
- Front matter → ACF integration: uses ACF values
- Markdown controller → HTTP client: returns representation
- Markdown controller → Hit counter: records request
- Admin settings → WordPress runtime: registers settings
- Admin settings → Markdown cache: invalidates cache
- Discovery shortcodes → Markdown controller: generates Markdown URL
- Discovery shortcodes → Markdown actions: renders actions
- Dynamic tags → Markdown controller: provides Markdown URL
- WooCommerce compatibility → Post eligibility: excludes commerce pages
- LiteSpeed compatibility → WordPress runtime: signals cache behavior