特定のページだけに表示させたい! よく使う条件分岐
2021-01-11
PR 当ページのリンクには広告が含まれています。
「トップページだけに表示させたい」「一覧ページだけ変更したい」
そんな時便利なのが条件分岐です。
このページでできること
- ・よく使う条件分岐をコピペできます。
目次
Contents
phpで使える便利な条件分岐
トップページとその他
<?php if ( is_home() || is_front_page() ) : ?> トップページに表示させたいものを入れる <?php else: ?> トップページ以外はこちら <?php endif; ?>
カテゴリーとその他
カテゴリーごとに表示を変える場合
<?php if( is_category('カテゴリーのIDを入れる') ) : ?> そのカテゴリーに表示させたいものを入れる <?php elseif ( is_category('カテゴリーのIDを入れる') ) : ?> そのカテゴリーに表示させたいものを入れる <?php else: ?> それ以外はこちら <?php endif; ?>
複数のカテゴリーとその他
カテゴリーごとに表示を変える場合
<?php if( is_category( array('カテゴリーのID', 'カテゴリーのID') ) ) : ?> そのカテゴリーに表示させたいものを入れる <?php else: ?> それ以外はこちら <?php endif; ?>
カテゴリーとその他
カテゴリーのスラッグごとに表示を変える場合
<?php if( is_category('スラッグ') ) : ?> そのカテゴリーに表示させたいものを入れる <?php elseif ( is_category('スラッグ') ) : ?> そのカテゴリーに表示させたいものを入れる <?php else: ?> それ以外はこちら <?php endif; ?>
カテゴリー内の記事(一覧)
<?php if( in_category('カテゴリーのIDを入れる') ) : ?> 同じカテゴリーの記事に表示させたいものを入れる <?php else: ?> それ以外はこちら <?php endif; ?>
指定以外を表示させる
<?php if( !is_page() ) : ?> 上で指定した以外のページがここに表示されます。 この場合は固定ページ以外 <?php endif; ?>
どちらかに当てはまる場合に表示させる
<?php if ( is_page('固定ページのID') || is_page('固定ページのID') ) : ?> <?php else: ?> <?php endif; ?>
固定ページとその他
固定ページごとに表示を変える場合
<?php if( is_page('固定ページのID') ) : ?> その固定ページに表示させたいものを入れる <?php elseif ( is_page('固定ページのID') ) : ?> その固定ページに表示させたいものを入れる <?php else: ?> それ以外はこちら <?php endif; ?>
複数の固定ページとその他
固定ページごとに表示を変える場合
<?php if( is_page( array('固定ページのID','固定ページのID','固定ページのID') ) ) : ?> その固定ページに表示させたいものを入れる <?php else: ?> それ以外はこちら <?php endif; ?>
その他
投稿ページだけに表示させたい <?php if ( is_single() ) : ?> カテゴリーの1ページ目だけに表示させたい <?php if( is_category() && !is_paged() ) : ?> モバイルで閲覧する時だけに表示させたい <?php if ( wp_is_mobile() ) : ?> 検索結果の一覧に表示させたい <?php if ( is_search() ) : ?> 404ページに表示させたい <?php is_404(); ?>
親ページの分岐
親ページスラッグによって判定できない?と思って調べていたら、こちらのページがとても分かりやすかったです!
条件分岐でクラスを追加
分岐を使って、特定のページにクラスをつけることも。
ページのテンプレートやheader、footer、sidebarなどで設定しておけば、該当するページだけに表示されるクラスがつけられます!
例)IDが677の固定ページならクラスを追加 <div <?php if(is_page('677')) echo 'class="クラス名"'; ?>> コンテンツ </div>
例)IDが677の投稿ページならクラスにtest2を追加 <div class="test <?php if(is_single('677')) echo 'test2'; ?>"> コンテンツ </div>