WordPressで記事を書く時、通常では文字の最初と最後が<p>タグで囲まれます。基本的にはそれで構わないのですが、例えば記事内でCSSを設定したいと思った時に一工夫する必要があります。それは、改行を入れてしまうと勝手に<p>タグで囲まれてしまうので、改行しないようにしなければいけません。
例として<span>~</span>の色を赤くしたい!とした時に、記事内に
<style>
span {
color: #ff0000;
}
</style>
と書いても周りが<p>タグで囲まれてしまうため、うまくCSSが働いてくれません。そのため、記事内でCSSを記述する場合は
<style>span { color: #ff0000; } </style>
という風に改行しないようにする必要があります。
改行しないとなると、コードを記述する時に見づらくなってしまうこともあるので、なにかと不便です…。
また、プラグインのExec-PHPをインストールし、記事内にPHPを記述しよう!とした時も<p>タグが邪魔をしてうまくPHPが動かない…なんてこともあります。
(※Exex-PHPについてはこちらの記事でご確認ください!)
そこで今回は<p>タグを記事内から消す、代表的な2つの方法について書いていきたいと思います!
functions.phpにコードを記述する方法
まず1つ目に紹介するのが、functions.phpに<p>タグを消すコードを記述して、サイト全体から<p>タグを消す方法です!
そのPHPコードは以下になります!
remove_filter('the_content','wpautop'); remove_filter('the_excerpt','wpautop');
このコードを記述することでサイト全体から<p>タグを消すことができます!
ただ、サイト全体から消えてしまうので、レイアウトが崩れないか確認する必要があります。
特定のページにのみ<p>タグを消す方法
そこで、特定のページにのみ<p>タグを消す方法もあります!例えばブログ記事本文の<p>タグのみ消したい!となった時にはsingle.phpを開き、<php the_content(); ?>の前に以下のコードを記述します。
<?php remove_filter('the_content','wpautop'); ?>
このコードを追記したものが以下になります。
<?php remove_filter('the_content','wpautop'); ?> <?php the_content(); ?>
このように記述することで、記事本文の<p>タグのみ消すことができるようになります!
個人的にはこのように特定のページ(phpファイル)の<p>タグを消す方法の方がレイアウトが崩れなくて済むように思えるのでオススメです(^-^)
まとめ
以上がWordPressにおいて<p>タグを消す2つの方法になります!サイトを制作する上で<p>タグを消したい!となった時には是非ともご活用ください!