Home > blog > Web 関連 > WordPress の本文内でコメントアウトすると、P要素が自動挿入される件。

WordPress の本文内でコメントアウトすると、P要素が自動挿入される件。

akiyan.com の 『 ブログを MT(3.32) から WordPress に移行しました 』 を読んで気になる点があったので、久しぶりの WordPress ネタ。

どうやら WordPress は 「 投稿記事中にコメントタグがあると、表示時にデザインが崩れる 」 ようです。 例えば以下のようなデータが本文にあると、表示時にタグがぐちゃぐちゃになり、結果、デザインが崩れます。

<!--
<img src="atode-hyouji-suru.jpg" alt="atode-kaku" />
-->

どうやらコメントタグは WordPress では特殊な用途で使われているらしく、レンダリングに致命的な影響を与えるようです。 記事中にコメントタグがある場合は、事前でも事後でもいいので削除する必要があります。

わたしも WordPress にした当初に ヽ(`д´)ノ となった点でした。 一つ一つ記事を修正していかねばならなかった苦労が懐かしい ・・・・・・ コメントアウトは使えないのかと焦りました。

コメントアウト tips

<!--
コメント
-->

前述の例のようにコメントが複数行に渡る場合はもちろんのこと、

<!--リストここから-->
<ul>
    <li>丸</li>
    <li>三角</li>
    <li>四角</li>
</ul>
<!--リストここまで-->

コメントだけの行の場合も、

<!--リストここから--><ul>
    <li>丸</li>
    <li>三角</li>
    <li>四角</li>
</ul>

コメントが先頭の場合でも、

<p><!--コメント--></p>

このように P 要素が自動挿入され、結果、意図しない表示になってしまいます。
これでは一見コメントアウト出来ないように思えますが、

<ul><!--リストここから-->
    <li>丸</li>
    <li>三角</li>
    <li>四角</li>
</ul><!--リストここまで-->

開始タグもしくは終了タグのすぐ後ろに挿入すれば回避出来ます。

その他の方法

そもそも 意図しない P 要素自体を挿入させない

wp-includes/default-filters.php108行目 ( ver.2.5.1 ) にある

add_filter('the_content', 'wpautop');

を以下のようにコメントアウトすると、P 要素が自動挿入されなくなります。

// add_filter('the_content', 'wpautop');
P 要素の自動挿入を無効化するプラグイン 『 Disable wpautop 』
プラグインの 『 Disable wpautop 』 を使用して、自動挿入される P 要素を無効化する方法もあります。 詳しい解説は TechGaga の 『 WordPress の p タグ自動追加をオフにするプラグイン: Disable wpautop 』 をご覧ください。

関連エントリー

Data Information

WebClap
見たよーいいねいいよいいよーGJ !最高 !! 20
Date
2009-01-03 03:11
Category
blog / Web 関連
Tags
/ / / /

Comments / Trackbacks

Comment Form

Trackback URL
http://eclucifer.net/blog/web/2009010301.html/trackback/