Weblasts

勝手に出力されるpタグを制御する

wrodpressで出力した本文はpタグで囲まれた状態で出力されます。 この機能は便利なのですが、邪魔になることもあります ケースごとに消す方法を書き残しておきます カスタムフィールドの値も一部pタグで囲まれてきます 今回はこいつらをどうにかしていきます。

the_contentやthe_excerptのpタグをどうにかする

全体的にpタグで囲まないように設定するときは、functions.phpに記述します 下記のコードを入れるだけで本文や抜粋文のpタグは出力されないようになります

functions.php

// 記事のpタグを出力しない
remove_filter('the_content', 'wpautop');
// 抜粋のpタグを出力しない
remove_filter('the_excerpt', 'wpautop');

注意点

pタグと一緒にbrタグも削除されます 気を付けましょう

特定のテンプレートのみで設定する場合

各テンプレートごとに設定したいのであればthe_contentを出力する直前にコードを記述しておくとそのテンプレートだけでpタグを消せる

functions.php

<?php remove_filter ('the_content', 'wpautop'); ?>
<?php the_content(); ?>

imgを勝手に囲うpタグだけををどうにかする

これはアクションフックを使うしかないので下記をfunctions.phpにコピペ

functions.php

<?php
function remove_p_on_images($content){
    return preg_replace('/<p>(\s*)(<img .* \/>)(\s*)<\/p>/iU', '\2', $content);
}
add_filter('the_content', 'remove_p_on_images');

Recommend Post