WordPressのテーマを編集する上で覚えておきたいテクニックとして条件分岐というものがあります。
このページにはこのように表示したいけど、こっちでは、こういうふうに表示させたい的なことができるのです。
条件はテーマを編集する必要がありますが、最近は子テーマ(元となるテーマ(親テーマ)を編集せずに独自にカスタマイズ分だけテーマを作る)機能も2016年から加わったので便利になりました。
これだと親テーマをバージョンアップ等してもカスタマイズした部分が消えないのですよね。(子テーマに関しては別の記事で紹介します)
さて、多少テーマを触ることができるようになると、自分のブログやサイトなりの表現方法を試したくなります。
本記事では、ページネーションで2ページ目を表示したときに表示させる、もしくわ表示させない条件分岐を紹介します。
テーマの編集でトップページだけバナーを載せたい時などに便利です。
WordPressで2ページ目には表示させたくない情報を非表示にさせる条件分岐 https://t.co/iUBCd2zhPO— D-31Nデザインスタジオ (@sawaking) 2019年3月6日
WordPressで2ページ目には表示させたくない情報を非表示にさせる条件分岐
私が別に運営しているサイトで、トップページの上部に特集記事を挿入している箇所があります。
ページネーションで2ページ目を表示させたくない時に、トップページ用のテンプレートに下記のような条件分岐を加えます。
is_paged()という関数です。これは、2ページ目か判断する関数になります。
目 次
2ページ目には表示させたくない条件分岐
下記の記述をテンプレートに入れることで、特定の情報を1ページ目だけに表示させることができます。
<?php if ( !is_paged() ) : ?> 1ページ目に表示させたいコンテンツ <?php endif; ?>
たとえば1ページ目と2ページ目に別の情報を表示させたい時は下記のような記述をします
<?php if ( !is_paged() ) : ?> 1ページ目に表示させたいコンテンツ <?php else : ?> 2ページ目に表示させたいコンテンツ <?php endif; ?>
トップページ用のテンプレートの無いテーマの場合
テーマによってトップページ用のテンプレートが用意されておらず、Archive.phpなどでまとまっている時は、トップページの場合はという条件を加えます。
<?php if( ( is_home() || is_front_page() ) && !is_paged() ) : ?> トップページ(ホーム)の1ページ目のみに表示させたいコンテンツ <?php endif; ?>
除外の条件分岐
条件の頭に!をつけると、それ以外という風に変わります。
<?php if( ( !is_home() || !is_front_page() ) && !is_paged() ) : ?> トップページ(ホーム)の1ページ目には表示させたくないコンテンツ <?php endif; ?>
まとめ:条件分岐は山のようにある
こんな事はできないだろうと言うようなことが条件分岐を使うと大体は出来てしまいます。
例えばサイドバーで、こんな時はこういう表示とか、ヘッダーの画像をカテゴリ毎に変えるとか。
特に専門的な知識がなくても、テーマの編集をする事を覚えれば割と簡単に出来てしまうのです。
他の条件分岐も今後記事にしていきたいと思います。
最後まで読んでいただきありがとうございました。
sawaking
最新記事 by sawaking (全て見る)
- Yet Another Related Posts(関連する記事)表示プラグインを任意の位置に表示させる - 2023年3月27日
- WordPressのダッシュボードにメッセージを掲載する方法 - 2022年6月15日
- カスタムフィールドに入力した値を検索キーワードに含めるプラグイン - 2022年1月18日