みなさん、こんにちは!
今回はよく使うことがあるWordPressの条件分岐タグをまとめて紹介致します。
「あの条件分岐をする時、どんなタグ使うんだっけ?」ってことよくありますよね。それを解消するためのメモ書きとしてこの記事でまとめて置こうと思い書く次第です(笑)
この記事の目次
WordPressにおける条件分岐
WordPressでは予め条件分岐タグが沢山用意されています。
特定のページや内容を表示するための条件を設定する際に使います。例えば、フロントページのみに表示したい内容があれば「is_front_page()」を使えば可能になります。
こういった便利な条件分岐タグを下記で紹介していきます。
ホームページ(フロントページ)のみ
<?php if(is_home() || is_front_page()): ?>
ここに表示させたい内容
<?php endif; ?>
ifの中に出てくる「||」は”または”を表します。ですのでこの場合は”ホームページ”または”フロントページ”の場合ということになります。
固定ページでホームページを設定している場合にも対応するためにどちらの条件にもあてはまるようにしています。
投稿ページのみ
<?php if(is_single()): ?>
ここに表示させたい内容
<?php endif; ?>
これは本当によく使います。投稿ページは他のページとは表示するものが限られてきますので、覚えてくとかなり捗ります。
また特定の記事のみという指定も出来ます。
<?php if(is_single('ここに投稿ID')): ?>
ここに表示させたい内容
<?php endif; ?>
固定ページのみ
<?php if(is_page()): ?>
ここに表示させたい内容
<?php endif; ?>
これは固定ページのみの場合の条件分岐です。
投稿ページと同じ様に「is_page()」のかっこ内にスラッグや固定ページIDを入れることで特定の固定ページの条件も指定できます。
<?php if(is_page('ここにスラッグまたは固定ページID')): ?>
ここに表示させたい内容
<?php endif; ?>
アーカイブページのみ
<?php if(is_archive()): ?>
ここに表示させたい内容
<?php endif; ?>
アーカイブページとはカテゴリー別、タグ別、投稿者別などの記事一覧ページのことです。
カテゴリーページのみ
<?php if(is_category()): ?>
ここに表示させたい内容
<?php endif; ?>
アーカイブページのなかでもカテゴリーページのみに指定したいときに使います。
また特定のカテゴリーの場合は下記のように指定します。
<?php if(is_category('カテゴリースラッグまたはID')): ?>
ここに表示させたい内容
<?php endif; ?>
特定のカテゴリーに属する投稿ページのみ
<?php if(in_category('カテゴリースラッグまたはID')): ?>
ここに表示させたい内容
<?php endif; ?>
ある特定のカテゴリー記事はデザインを変えたいシーンなどはよくありますよね、そんな時に活躍する条件分岐タグです。
404 Not Found ページのみ
<?php if(is_404()): ?>
ここに表示させたい内容
<?php endif; ?>
404ページのカスタマイズはしっかりとすべきなので、こういった条件分岐タグを活用してしっかりと404ページを仕上げておきましょう。
検索結果ページのみ
<?php if(is_search()): ?>
ここに表示させたい内容
<?php endif; ?>
ユーザーがログインしている場合
<?php if(is_user_logged_in()): ?>
ユーザーがログインしている時
<?php else: ?>
ユーザーがログインしていない場合
<?php endif; ?>
意外とよく使うんです。
例えばGoogleアナリティクスのトラッキングコードをユーザーログインされていない場合のみ挿入するなど、活用シーンが意外とあります。
最後に
これらの条件分岐タグはWordPressの公式リファレンスで紹介されていますので、こちらも参考にしてみて下さい。
それでは、また会う日まで!