--- title: "Why Does My Page Have a .md Version? How to Turn It Off" url: "https://plugpress.co/docs/waggle-troubleshooting-unexpected-md-pages.md" canonical: "https://plugpress.co/docs/waggle-troubleshooting-unexpected-md-pages/" published: "2026-07-28" modified: "2026-08-03" author: "Fahim" description: "Every published WordPress page gets an AI-readable .md version, even your blog index. Turn it off for one page, a whole post type, or the site." tags: - "Waggle" --- # Why Does My Page Have a .md Version? How to Turn It Off **Symptom.** Adding `.md` to a page's URL returns a Markdown copy of it. That includes pages you never thought of as content, like your blog index at `/blog.md`, which comes back as a list of recent post excerpts. You want some pages to have no Markdown version. **Why this happens.** Waggle publishes a `.md` copy of every published post and page, for the post types you have switched on, so AI crawlers can read your content as plain text. Two things combine to produce the odd cases: 1. **Your blog index is a WordPress Page.** If Settings → Reading uses a page called "Blog" as your posts page, that is a real published Page. It gets a `.md` copy like any other page. 2. **Pages with no stored content are rendered live.** A posts page, or a page built with a page builder, has an empty content field. Instead of publishing an empty file, Waggle loads the page the way a visitor sees it and converts the main content area. On a blog index, that area is the list of recent posts. This is working as designed. The `.md` pages are `noindex`, they carry a canonical link back to the HTML page, and they only ever show content that is already public. Whether a given page *should* have one is your call. **Is restricted content safe?** Yes, from Waggle 1.0.5 onwards. The `.md` copy is now built the same way the page itself is displayed, as an anonymous visitor. If a membership or paywall plugin hides a post's body from logged-out readers, the `.md` copy hides it too. Password-protected posts and drafts never had a `.md` version. If you are on an older version, update. See [restricted content showing in your .md pages](https://plugpress.co/docs/waggle-troubleshooting-markdown-restricted-content/). **How to confirm.** Open the page in the editor and look at the Waggle sidebar under **Visibility**. If you see the "Hide the Markdown version" toggle, the page publishes a `.md` copy. Or request the URL: ``` curl -sI https://example.com/blog.md ``` A `200` with `X-Robots-Tag: noindex` is Waggle's Markdown copy. **Fix.** Three levels of control, most specific first: 1. **One page.** Edit it, open the Waggle sidebar → **Visibility** → turn on **Hide the Markdown version**. The `.md` URL returns 404 straight away and the discovery link disappears. The page stays listed in `llms.txt`, but the entry switches to the normal page URL. For several pages at once, use the **Markdown** column's bulk actions in the posts list. 2. **A whole post type.** **Waggle → AI Visibility → LLMs.txt & Markdown** → turn off that type's toggle under Markdown versions (.md). 3. **The whole site.** The master switch on the same screen. None of this affects your HTML pages, search indexing or sitemap. It only controls the Markdown copy. ## Related guides - [llms.txt and Markdown pages](https://plugpress.co/docs/waggle-machine-files/) - [The Waggle panel in the editor](https://plugpress.co/docs/waggle-editor-sidebar/) - [How AI bots find your Markdown pages](https://plugpress.co/docs/waggle-how-ai-bots-find-markdown-pages/) ---