ワードプレスの仕様で入るpとかbrを消す方法
勝手に入ってしまうと装飾が崩れてしまって困るときありますよね。
ブログとか記事を書いているときは、いちいちbrとか書くのはめんどくさい。
brだけを残して、pだけ消す方法を探してみたのですが、うまく消す方法はないようです。
そこで、特定のページはpもbrも消して、他のページには効かないようにする方法をご紹介します。
今回参考にさせていただいたのは、SONIDOさんの記事です。
「preg_match」を使って、指定したコードを入れているときにだけ、指示された内容を適応させますよという方法です。
function.phpに追加
function rm_wpautop($content) { global $post; // Get the keys and values of the custom fields: if(preg_match('|<!--handmade-->|siu',$content)){ remove_filter('the_content', 'wpautop'); } else { add_filter('the_content', 'wpautop'); } return $content; } // Hook into the Plugin API add_filter('the_content', 'rm_wpautop', 9);
除外したいページに追加
brやpを除外したい記事編集ページ内のどこでもいいので以下を入れます。
<!--handmade-->
指定されたコードがある場合のみ適応されるので、過去のページには適応させたくないときに便利です。
全ページのpとbrを削除したい
過去のページもすべてp・brをなくしても問題ないという場合は以下をfunction.phpに追加。
追加後は必ず崩れがないかご確認ください。
全投稿ページでpとbrを消す
remove_filter('the_content', 'wpautop');
抜粋記事内のpとbrを消す
remove_filter('the_excerpt', 'wpautop');