<pre> タグを使って表示していた箇所が Markdown で再解釈され、崩れることがあるため注意が必要です
問題点:
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解析されず、元通り整った表示になります。
コメントを表示する comments.php が以下のような構成になっている場合:
<?php wp_list_comments( array( 'style' => 'ol', 'short_ping' => true, 'avatar_size' => 42, ) ); ?>
この出力は comment_text() を経由しているので、先ほどの comment_text フィルターが有効になります。
よって、comments.php 側を直接修正する必要は基本的にありません。