HOME > WordPress > [WordPress] imgタグまわりだけpタグを除外する方法

[WordPress] imgタグまわりだけpタグを除外する方法

WordPressには、pタグやbrタグを自動で挿入してくれる機能(wpautop)があって、非常に便利なんですが、imgタグもpタグで囲われてしまって、余計なマージンが入ってしまうケースがあります。

解決方法を探していたら、kachibito.netさんにありました。素晴らしい。

pタグ除外方法

function.phpに以下のコードを記述するだけ。

注意点

imgタグの直後に、改行せずテキストを記述すると、テキストだけを囲うはずのpタグがimgタグも含んでしまうケースがありました。

↓こう書いたら

<img src=”xxx.jpg” />
テストテキスト

imgタグとテキストがpタグで囲われてしまいました。

<p>
<img src=”xxx.jpg” />
テキスト
</p>

なので、imgタグの後は1行あけるようにしましょう。

※自分、記事を書く時は、ビジュアルではなくテキストを使ってるのでビジュアルの場合はわからんです。

特定ページのみ適用する場合

imgタグまわりだけじゃなく、このページは自動挿入したくないな、って時はテンプレートに直接書き込みましょう(single.phpやcategory.phpなど)。

このように<?php the_content(); ?>の直前にremove_filter を挿入。

自動整形機能完全停止

完全に自動整形機能を停止させる場合は、function.phpに以下のコードを記述してください。

プラグイン「PS DISABLE AUTO FORMATTING」を使う方法

プラグインで制御する方法もございます。
PS DISABLE AUTO FORMATTING

参考サイト

画像のみ、pタグで囲わないようにする(kachibito.net)