WordPressの投稿をMarkdownで書く方法

1. Parsedown for WordPress プラグインを導入

  • プラグイン名: Parsedown for WordPress
  • 概要: Markdownで投稿本文を書けるようにするプラグインです。

導入手順

  1. WordPressの管理画面から「プラグイン > 新規追加」へ
  2. 「Parsedown for WordPress」で検索し、インストール → 有効化
  3. これで投稿本文にMarkdownが使えるようになります

注意点

  1. 投稿本文以外にも影響を及ぼす場合があります(例:コメント欄など)
  2. 特に <pre> タグを使って表示していた箇所が Markdown で再解釈され、崩れることがあるため注意が必要です

2. コメント表示に `<pre>` を適用する方法(表示崩れ対策)

問題点:
Parsedownが有効だと、読者コメントの内容もMarkdownとして処理され、整形された解答文(本来 <pre> で囲いたい部分)が崩れることがある

解決策:
WordPressの functions.php に以下のフィルターフックを追加します:

function disable_parsedown_in_comments($content) {
  if (is_admin()) return $content; // 管理画面ではそのまま
  if (is_singular() && in_the_loop()) {
    // コメント本文の場合はエスケープしたまま出力
    return '<pre>' . esc_html($content) . '</pre>';
  }
  return $content;
}
add_filter('comment_text', 'disable_parsedown_in_comments', 99);

これにより、コメントの内容は <pre> タグ付きで表示され、Markdown解析されず、元通り整った表示になります。


3. コメントテンプレートに手を加えた場合(確認ポイント)

コメントを表示する comments.php が以下のような構成になっている場合:

<?php
  wp_list_comments( array(
    'style'       => 'ol',
    'short_ping'  => true,
    'avatar_size' => 42,
  ) );
?>

この出力は comment_text() を経由しているので、先ほどの comment_text フィルターが有効になります。 よって、comments.php 側を直接修正する必要は基本的にありません。


補足

  • Parsedown を利用して Markdown 投稿を有効化した場合、見出し・リスト・コードブロックなどが Markdown で簡単に記述可能になります
  • コメント欄や他のフィールドに影響が出る可能性があるため、確認の上で導入してください
memo/wordpress/markdown_parser.txt · 最終更新: by nfujishima
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0