WP特定の記事、特定の固定ページだけに表示する条件分岐タグの応用
<?php if( is_page( array(ページID,ページID,ページID) ) ): ?> 表示したいコンテンツ <?php endif; ?>
エクスクラメーションマーク(ビックリ)をつけると表示したくないページを指定
<?php if( !is_page( array(ページID,ページID,ページID) ) ): ?> 表示したくないコンテンツ <?php endif; ?>
をコンテンツの直前に記述すれば実現します。
概要
このたび、新しくWPで作られたサイトを任されることになりました。その際に、ご要望にお答えするためには、WPが勝手にコードを整形してしまう機能(特にPタグの挿入)を排除しなければならない場面に遭遇しました。
通常、
functions.php に
remove_filter('the_content', 'wpautop');
を追加
または
特定のファイルの
<?php the_content(); ?>
の直前に
<?php remove_filter ('the_content', 'wpautop'); ?>
と入力すれば良いのですが
すべてのページ、すべての記事などまとめて反映されてしまうので
今まで整形されることを前提として作りこんできたレイアウトが
他のページで崩れてしまう可能性が出てきます。
そこで、条件分岐タグを使おうとしたところ
<?php if(is_page(ページID)): ?> ~ <?php endif; ?>
または
<?php if(is_post(記事ID)): ?> ~ <?php endif; ?>
とすれば、指定したIDのページにしか表示されないということがわかりました。
複数ページを指定する方法は、いろいろ紹介されているようですが
一番簡単だなと思ったのが、今回の記述。
array()
を追加するだけというシンプルさが気に入りました。
早速、クライアント様のWPに導入。
表示して欲しい2ページのみに
<?php remove_filter ('the_content', 'wpautop'); ?>
が表示されるようになりました。
作業メモでした。