[WordPress]the_content()で表示させたら</p>が勝手に入るので困った
今更な感じですが、WordPressで制作したサイトのソースをのぞいてみたら見知らぬ</p>が入っていたので、気になって調べてみました。
固定ページのクラシックエディタで下記のような感じでショートコードを記述していたのですが・・・
<section id="main">
[shortcode]
<div>
・・・・
</div>
</section>
ソースを見ると・・・
<section id="main">※ショートコードの表示</p>
<div>
・・・・
</div>
</section>
ん、なぜにpを閉じやがる?
表示自体は問題なさそうなのですが、ちょっとすっきりしません。
WordPressには、自動でpタグを入れたりする癖(?)があるのでどうやらそれっぽい。
「WordPress Pタグ」あたりで検索すると自動成型wpautop()の記事がたくさん見つかります。function.phpなどにremove_filter('the_content', 'wpautop');を記述する方法で自動成型を停止させることができるようです。
参考:
https://takayakondo.com/wordpress-auto-p-delete/
まぁ、これでもよかったと思うのですが、これまで作ったページなんかにも影響が出そうだし、裏技ないかなぁって探していたら簡単なのありましたw
<section id="main">
<p>[shortcode]</p>
<div>
・・・・
</div>
</section>
ショートコードをpタグで包み込むw
<section id="main">
※ショートコードの表示
<div>
・・・・
</div>
</section>
するとなぜかpタグさんいなくなるwww
・・・これはこれで変な感じはするんですが消えました。
この方法は検索してもなかなか見つからなかったです。
参考:
https://sysbird.jp/wptips/2010/05/12/%E3%82%B7%E3%83%A7%E3%83%BC%E3%83%88%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AB%E5%8B%9D%E6%89%8B%E3%81%AB%E5%85%A5%E3%81%A3%E3%81%A6%E3%81%8F%E3%82%8Bp%E3%82%BF%E3%82%B0/
とりあえず</p>が消えたので、良しとしますかね。
この記事が気に入ったらサポートをしてみませんか?