Title: Serve Markdown
Author: Azey
Published: <strong>2026 年 3 月 15 日</strong>
Last modified: 2026 年 3 月 15 日

---

搜尋外掛

![](https://ps.w.org/serve-md/assets/banner-772x250.jpg?rev=3483080)

![](https://ps.w.org/serve-md/assets/icon-256x256.png?rev=3483080)

# Serve Markdown

 由 [Azey](https://profiles.wordpress.org/akumarjain/) 開發

[下載](https://downloads.wordpress.org/plugin/serve-md.1.0.zip)

 * [詳細資料](https://tw.wordpress.org/plugins/serve-md/#description)
 * [使用者評論](https://tw.wordpress.org/plugins/serve-md/#reviews)
 *  [安裝方式](https://tw.wordpress.org/plugins/serve-md/#installation)
 * [開發資訊](https://tw.wordpress.org/plugins/serve-md/#developers)

 [技術支援](https://wordpress.org/support/plugin/serve-md/)

## 外掛說明

AI agents from ChatGPT, Claude, Perplexity, and others read your content to generate
answers — but they parse through HTML, JavaScript, and navigation just to reach 
it. Serve Markdown gives them a direct path: clean Markdown with structured metadata.
When a crawler requests it — via an `Accept: text/markdown` header or a `.md` URL—
your site responds instantly. No noise, no guesswork.

#### How It Works

Serve Markdown adds three capabilities to your WordPress site:

**1. Content Negotiation**
 When an AI crawler sends `Accept: text/markdown`, your
site returns Markdown instead of HTML — no URL changes needed.

**2. .md URL Suffix**
 Append `.md` to any post or page URL (e.g. `example.com/my-
article.md`) to get the Markdown version directly.

**3. Markdown Auto-Discovery**
 Every page includes a `<link rel="alternate" type
="text/markdown">` tag in the HTML head so crawlers can find your Markdown automatically.

#### What the Markdown Output Looks Like

Every Markdown response includes YAML frontmatter with structured metadata followed
by your post content. Here is a real example:

    ```
    ---
    url: 'https://akumarjain.com/textexpander-year-in-review-2025/'
    title: TextExpander Year in Review 2025
    author:
      name: Ajay
      url: 'https://akumarjain.com/author/akumarjain/'
    date: '2026-01-05T09:05:00+05:30'
    modified: '2026-01-10T14:30:06+05:30'
    type: post
    categories:
      - 2025
      - Year in Review
    tags:
      - '#ToolsIUse'
      - Productivity
      - Remote Work
    image: 'https://akumarjain.com/wp-content/uploads/text-expander-year-in-review-2025.webp'
    published: true
    ---

    # TextExpander Year in Review 2025

    In my daily work, I need to type the same words and phrases repeatedly...
    ```

#### Features

**Content Serving**

 * Content negotiation via `Accept: text/markdown` header
 * `.md` URL suffix on any post or page
 * Auto-discovery `<link rel="alternate">` tag in page head
 * Each feature can be toggled independently
 * Choose which post types are exposed (posts, pages, custom post types)

**Frontmatter and Metadata**

 * YAML frontmatter with title, author, date, categories, tags, featured image, 
   and more
 * Toggle individual metadata fields on or off
 * Add custom static key-value pairs (e.g., `license`, `language`)
 * Map WordPress custom fields (post meta) into the frontmatter

**Access Control**

 * Per-post opt-out via a sidebar checkbox in the editor
 * Exclude entire categories from Markdown serving
 * Exclude entire tags from Markdown serving
 * Only published posts are served — drafts and private posts are never exposed

**Crawler Insights**

 * Request log showing every Markdown request with timestamp, URL, bot name, and
   method
 * Automatic bot detection: ClaudeBot, GPTBot, ChatGPT, OAI-SearchBot, PerplexityBot,
   Googlebot, Bingbot, Cohere, Meta AI, Bytespider, Applebot, and more
 * Stats dashboard: total requests, requests today, unique bots
 * Filter log by individual bot
 * Configurable retention period with automatic pruning
 * One-click log clearing

**Editor Integration**

 * “Preview Markdown” button in the post editor sidebar
 * “View Markdown” link in the Posts and Pages list table
 * Meta box shows on all enabled post types

#### Performance

Markdown conversion only runs when specifically requested — regular visitors see
the same HTML pages they always have. The crawler log uses a lightweight custom 
table with three safeguards against unbounded growth: time-based retention, a row
count cap, and a table size cap.

#### Privacy

The crawler log stores IP addresses and user-agent strings from Markdown requests.
This data stays in your WordPress database and is never sent to external services.
You can disable logging entirely, configure a retention period, or clear the log
at any time from the settings page.

## 螢幕擷圖

 * [[
 * General settings tab — toggle features and select post types.
 * [[
 * Frontmatter settings — control metadata fields and add custom fields.
 * [[
 * Exclusions — block categories, tags, or individual posts.
 * [[
 * Crawler log — see which AI bots are reading your content.

## 安裝方式

 1. Upload the `serve-md` folder to `/wp-content/plugins/`.
 2. Activate the plugin through the **Plugins** menu in WordPress.
 3. Go to **Settings > Serve Markdown** to configure.
 4. Visit any published post URL with `.md` appended to verify it works.

No additional server configuration is required. The plugin works with all standard
WordPress permalink structures.

## 常見問題集

### Do I need to configure anything?

The plugin works out of the box with sensible defaults: posts and pages are served
as Markdown with all metadata fields enabled and crawler logging turned on. Visit**
Settings > Serve Markdown** to customize.

### Will this affect my site speed?

No. Markdown is generated on demand only when explicitly requested. Normal page 
loads are completely unaffected, and the crawler log insert adds negligible latency—
or disable logging entirely from settings.

### Does it work with custom post types?

Yes. Any public post type registered on your site will appear as a checkbox on the
General settings tab.

### Can I exclude specific posts?

Yes, in two ways. You can check “Disable Markdown for this post” in the editor sidebar
for individual posts. You can also exclude entire categories or tags from the Exclusions
settings tab.

### What metadata is included?

By default: URL, title, author name and URL, publish date, last modified date, post
type, excerpt, categories, tags, featured image URL, and published status. Each 
field can be toggled off individually. You can also add custom static fields and
map WordPress custom fields.

### What AI crawlers are detected?

ClaudeBot (Anthropic), GPTBot and OAI-SearchBot (OpenAI), ChatGPT-User, Google-Extended(
Google AI), PerplexityBot, Bingbot, Cohere, Meta AI, Bytespider (ByteDance), Applebot,
CCBot (Common Crawl), YouBot, and a catch-all for unrecognized bots.

### Is this compatible with caching plugins?

Yes. Serve Markdown sets the `DONOTCACHEPAGE` constant when serving Markdown responses,
which is respected by WP Super Cache, W3 Total Cache, WP Rocket, and most other 
caching plugins.

### Does this work on WordPress.com?

Yes. The plugin uses `WPINC` for environment detection instead of `ABSPATH`, making
it compatible with WordPress.com Business plans, WordPress VIP, Pantheon, and other
managed hosting platforms.

## 使用者評論

這個外掛目前沒有任何使用者評論。

## 參與者及開發者

以下人員參與了開源軟體〈Serve Markdown〉的開發相關工作。

參與者

 *   [ Azey ](https://profiles.wordpress.org/akumarjain/)

[將〈Serve Markdown〉外掛本地化為台灣繁體中文版](https://translate.wordpress.org/projects/wp-plugins/serve-md)

### 對開發相關資訊感興趣？

任何人均可[瀏覽程式碼](https://plugins.trac.wordpress.org/browser/serve-md/)、查看
[SVN 存放庫](https://plugins.svn.wordpress.org/serve-md/)，或透過 [RSS](https://plugins.trac.wordpress.org/log/serve-md/?limit=100&mode=stop_on_copy&format=rss)
訂閱[開發記錄](https://plugins.trac.wordpress.org/log/serve-md/)。

## 變更記錄

#### 1.0

 * Initial release.

## 中繼資料

 *  版本 **1.0**
 *  最後更新 **3 個月前**
 *  啟用安裝數 **50+**
 *  WordPress 版本需求 ** 6.5 或更新版本 **
 *  已測試相容的 WordPress 版本 **6.9.4**
 *  PHP 版本需求 ** 8.1 或更新版本 **
 *  語言
 * [English (US)](https://wordpress.org/plugins/serve-md/)
 * 標籤:
 * [AI](https://tw.wordpress.org/plugins/tags/ai/)[content negotiation](https://tw.wordpress.org/plugins/tags/content-negotiation/)
   [crawlers](https://tw.wordpress.org/plugins/tags/crawlers/)[markdown](https://tw.wordpress.org/plugins/tags/markdown/)
   [seo](https://tw.wordpress.org/plugins/tags/seo/)
 *  [進階檢視](https://tw.wordpress.org/plugins/serve-md/advanced/)

## 評分

這個項目尚無任何評論記錄。

[Your review](https://wordpress.org/support/plugin/serve-md/reviews/#new-post)

[查看全部使用者評論](https://wordpress.org/support/plugin/serve-md/reviews/)

## 參與者

 *   [ Azey ](https://profiles.wordpress.org/akumarjain/)

## 技術支援

使用者可在技術支援論壇提出意見反應或使用問題。

 [檢視技術支援論壇](https://wordpress.org/support/plugin/serve-md/)