wordpress 条件分岐タグのまとめ

備忘録として、仕事で使うときにコピペで使えそうなwordpressの条件分岐タグをまとめてみました。

テンプレート別の条件分岐タグ

  • is_front_page() || is_home
    フロントページまたはホームということでセットで使うパターンが多い。
  • is_single()
    記事ページがどうかを判断
  • is_page()
    固定ページかどうかを判断
  • is_category()
    カテゴリーページかどうかを判断
  • is_tag()
    該当タグかどうかを判断
  • is_archive()
    アーカイブページかどうかを判断
  • is_paged()
    2ページ目以降かどうかを判断。PagerクラスやWP-PageNaviプラグインを使用した場合、記事一覧ページの2ページ目以降のページかどうかを判断。
  • is_singular()
    カスタム投稿タイプの判断タグ。どのカスタム投稿タイプかどうかという判定は「is_single()」ではなく、is_singular()を使用。
  • is_tax()
    カスタムタクソノミーの判断タグ。

参考サイト・・・WordPressで覚えておくと便利な7つの条件分岐のタグ

 

タグ使用パターン

  1. 条件が一つのみ
    <?php if (is_single('1')): ?>
    	// 投稿IDが「1」の場合に行う処理
        // is_page('1')の場合は固定ページのIDが「1」の場合に行う処理
    <?php endif; ?>
  2. 条件が2つ
    <?php if (is_single('1')): ?>
    	// 投稿IDが「1」の場合に行う処理
    <?php else: ?>
    	// 投稿IDが「1」以外の場合の処理
    <?php endif; ?>
  3. 条件が2つ以上
    <?php if (is_single('1')): ?>
    	// 投稿IDが「1」の場合に行う処理
    <?php elseif (is_single('2')): ?>
    	// 投稿IDが「2」の場合に行う処理
    <?php elseif (is_single('3')): ?>
    	// 投稿IDが「3」の場合に行う処理
    <?php else: ?>
            // 上記の条件に当てはまらない場合の処理
    <?php endif; ?>

複数のIDを条件として使用する場合

複数のカテゴリーや投稿、固定ページが条件に該当する場合、配列、arrayを利用。

<?php if (is_single(array(5,6,7,8)) : ?>
    // ページIDが'5,6,7,8'のときだけに表示したい内容。
  // 固定ページ、カテゴリページも同様
<?php endif; ?>

 

論理演算子を利用して条件分岐

  1. and演算子「&&またはand」
  2. or演算子「||」
  3. NOT演算子「!」
  4. 等しい「==」
  5. 等しくない「!=」

参考サイト・・・bizvektorで使いそうな条件分岐