

Settings — General: pick the content types that expose a <code>.md</code> (nothing is served until at least one is ticked) and set the cache TTL.
System Markdown Alternate publishes a clean, machine-readable Markdown representation of your content. Append .md to any supported permalink and you get YAML front matter plus the post body converted to Markdown — with marketing clutter, forms and navigation widgets stripped out.
https://example.com/my-post/ → HTML
https://example.com/my-post.md → Markdown (front matter + content)
It is built for the era of AI assistants, agents and technical scrapers that prefer plain Markdown over rendered HTML. It is not a generic SEO plugin.
Read the full documentation — installation, every setting in the panel, the endpoints, the shortcodes, the integrations and troubleshooting.
.md endpoint for every supported, published, public post.Accept: text/markdown or ?format=markdown requests. The Accept header is parsed with q-values, so a client that prefers HTML (higher q) still gets HTML.Vary: Accept on negotiable URLs, so caches and CDNs that honour it keep the HTML and Markdown representations of the same address apart. Because some page caches key by URL only and ignore Vary, the negotiated Markdown (and 406) responses are also sent non-cacheable, so safety never depends on Vary alone.<link rel="alternate" type="text/markdown"> in the document head and a typed Link: rel="alternate" response header. The HTTP form is also available to HEAD requests.Content-Type: text/markdown, X-Robots-Tag (default noindex, follow) and a Link: rel="canonical" back to the HTML.taxonomies: block, alphabetically ordered. Nothing is ever published automatically: a taxonomy registered by another plugin appears in the panel unticked, and taxonomies with no public term archive are labelled as internal..md hit counter (off by default): counts how many times the Markdown endpoint is served, split bot vs human, with a further breakdown naming a few known AI crawlers (ClaudeBot, GPTBot, PerplexityBot, CCBot) among the bot total. Privacy by design: only aggregate daily totals are stored — no IP addresses, no user-agent strings, no per-visitor data, no cookies, no external calls..md: rendered through Bricks’ own API (never re-implemented), with the same excluded-shortcode/excluded-class rules as everything else, plus a new “excluded builder elements” list for Bricks chrome (forms, nav menus, share bars, tables of contents, breadcrumbs). A post switched back to Render with WordPress is unaffected. Detection is per post, never per post type: a site that builds its pages with Bricks while its articles stay in the ordinary editor keeps every one of those articles.post_content, or is there as the builder’s own layout shortcodes — so it returns 404 instead of an empty or misleading document, and it stays out of the alternate links and the shortcodes.[sysmda_md_url] (the Markdown URL), [sysmda_md_download] (a bare download link), and [sysmda_md_actions] (an opt-in Copy as Markdown split button with copy, new-tab view and download actions).{{sysmda_md_url}} Dynamic Tag, available automatically, usable in element fields (e.g. a Button URL).