1. TOP
  2. >カスタマイズ・小技>
  3. WordPressでよく使う条件分岐パターン

WordPressでよく使う条件分岐パターン

カスタマイズ・小技, 技術メモ, WordPress

2020/06/08
2022/07/21
WordPressでよく使う条件分岐パターン

この記事は【2022年7月21日】が最後の更新のため、記事の内容が古い可能性があります。

WordPressのカスタムで、特定のページやカテゴリに属するページには問合せフォームを表示させたいなど、条件分岐に関して良く使うかなってものを載せてみます。
検索すればいっぱいでてくる内容ではありますが、ご参考にどうぞ!

トップページとそれ以外のページの条件分岐

<?php if( is_home() || is_front_page() ) : ?>
トップページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

設定→表示設定で、フロントページを特定の固定ページに設定してしてある場合もあるので、is_home()とis_front_page()を記述すると良いでしょう。

投稿ページと固定ページでの条件分岐

投稿ページではis_single()固定ページではis_page()を使用します。

・投稿ページの条件分岐

<?php if( is_single() ) : ?>
投稿ページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

・固定ページの条件分岐

<?php if( is_page() ) : ?>
固定ページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

おまけで特定の投稿ページにのみ表示させたい場合は、下記のようになります。

・投稿ページのIDを指定して条件分岐

<?php if( is_single('投稿ID') ) : ?>
投稿ページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

is_single(‘投稿ID’)で、該当する投稿ページのIDを記述してください。
固定ページの場合はis_page(‘投稿ID’)と記述。

・複数の指定した投稿ページで条件分岐

<?php if( is_single( array('投稿ID','投稿ID','投稿ID') ) ) : ?>
投稿ページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

固定ページの場合は、is_pageに書き換えてください。この後のカテゴリーなんかも同じ要領でやってみてください。

アーカイブやカテゴリーページでの条件分岐

・アーカイブページの条件分岐

<?php if( is_archive() ) : ?>
アーカイブページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

・カテゴリーページの条件分岐

<?php if( is_category() ) : ?>
カテゴリーページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

カテゴリーに関するイメージ画像や説明文など表示するのに使ってみるのもいいかもしれませんね。

カスタム投稿の条件分岐

・カスタム投稿の条件分岐

<?php if( is_singular('カスタム投稿名') ) : ?>
カスタム投稿のページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

・カスタムタクソノミーの条件分岐

<?php if( is_tax('カスタム投稿名') ) : ?>
カスタムタクソノミーのアーカイブページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

カスタム投稿のページでもこのような形で条件分岐できます。

そのほかの条件分岐

・ログインの有無での条件分岐

<?php if( is_user_logged_in() ) : ?>
ユーザーがログイン時に表示
<?php else: ?>
それ以外の表示
<?php endif; ?>

会員制サイトなどで、ユーザーがログインした場合に、「ようこそ○○さん」みたな表示であったり、公開範囲をゲストとユーザー毎に変えたりに使えます。

・アイキャッチ画像の有無で条件分岐

<?php if( has_post_thumbnail() ) : ?>
アイキャッチ画像がある場合に表示
<?php else: ?>
それ以外の表示
<?php endif; ?>

アイキャッチが無い場合のデフォルト画像を用意して表示したい時などに使ってみてください。

・検索ページの条件分岐

<?php if( is_search() ) : ?>
検索ページでの表示
<?php else: ?>
それ以外の表示
<?php endif; ?>

・カスタムフィールドの値の有無で条件分岐

<?php $value = get_post_meta($post->ID, 'カスタムフィールド名', true) ?>
<?php if(!empty($value)): ?>
カスタムフィールドの値がある場合に表示
<?php else: ?>
それ以外の表示
<?php endif; ?>

カスタムフィールドの値があればそのまま表示でもいいですが、値が空の場合は別のテキストや画像など用意すると良いかと思います。

複数の条件分岐

こんな感じでそれぞれのページ毎に条件分岐させる事ができます。

<?php if( is_home() || is_front_page() ) : ?>
フロントページで表示
<?php elseif( is_single() ) : ?>
投稿ページで表示
<?php elseif( is_page() ) : ?>
固定ページで表示
<?php else: ?>
それ以外のページで表示
<?php endif; ?>

他にも様々な内容での条件分岐は考えられますが、これくらいは覚えておくと役に立つかと思います。

- PR -

ニッチなテーマのイラスト素材投稿始めました。良かったら使ってください。
RU DESIGN/無料イラスト・フリー素材「イラストAC」

オリジナル絵本 Kindleにて出版
ナマケモノのふにゃまるちゃん

ドメイン取得は同じところで取得しておくと便利ですよ。


応援・支援よろしくお願いいたします。サイト運営に使わせていただきます。

■BTC
1PPYM4493tNYVZuGxXnYLpVdKJXSwFagPQ
■MATIC
0xC75744667A7396DFF507cf44371A2CF0B6eEF03B
■ETH
0xC75744667A7396DFF507cf44371A2CF0B6eEF03B

ホームページ制作ならRU DESIGN

関連記事

【OCLP】公式サポートが終了したMacに最新のOS「sonoma」をインストール
2024/08/02
 公式サポートの終了した古いMacに最新のmacOSを導入することができる「OpenCore Legacy Patcher(OCLP)」を利用してみました。今回...
メタタグを使用して簡単にリダイレクト(301)設定する方法
2024/05/23
サイトのドメイン変更時、なんらかの理由で公開時のアドレスと異なる記事へ移転や変更をした際に、訪れたユーザーを指定したURLへ転送するリダイレクト機能について。古...
WordPressでカスタム投稿に投稿する際に、アイキャッチを設定していなければ自動で設定させる方法
2024/05/20
ワードプレスのアイキャッチの設定をしなかった場合でも、投稿時に自動で設定してくれる方法です。   functions.php function def...
別のワードプレスへ記事移行の際に画像もエクスポートしてくれるプラグイン
2024/05/16
ワードプレスの記事をエクスポートする際に、デフォルトの状態ではメディア(添付ファイル)は含まれません。「Export media with selected c...
ワードプレス各バージョンと使用可能なPHPバージョン一覧
2024/01/29
 WordPressのバージョンによって使用可能なPHPのバージョンは異なってきます。PHPのバージョンによっては、ワードプレスが正常に動作しなかったり、テンプ...