WordPressページ別条件分岐チートシート

wordpress 条件分岐

WordPressテンプレート内でページ種別ごとに出力内容を出し分けたい場面が頻繁にあらわれます。

そんな場合によく使うページ別条件分岐タグの備忘録です。

if( is_front_page() ) :
    // トップページ
elseif( is_single() ) :
    // 個別投稿ページ
elseif( is_single( 17 ) ) :
    // 個別投稿ページ・ID 17の記事
elseif( is_single( ‘personal-work’ ) ) :
    // 投稿スラッグが「personal-work」の記事
elseif( is_single( array( 5, 7, ‘personal-work’ ) ) ) :
    // 個別投稿ページ・IDが2または5、または投稿スラッグが「personal-work」のどれかの記事
elseif( is_page() ) :
    // 固定ページ
elseif( is_page(17) ) :
    // ID 17の固定ページ
elseif( is_page( ‘about’ ) ) :
    // 投稿スラッグが「about」のトップページ
elseif( is_page( array( 2, 5, ‘about’ ) ) ) :
    // IDが2または5、または投稿スラッグが「about」のどれかの固定ページ
elseif( is_category() ) :
    // カテゴリーページ
elseif( is_category( 17 ) ) :
    // カテゴリーID 17のアーカイブページ
elseif( is_category( ‘marketing’ ) ) :
    // カテゴリースラッグ「marketing」のアーカイブページ
elseif( is_category( array( 2, 5, ‘marketing’ ) ) ) :
    // カテゴリーIDが2または5、またはカテゴリースラッグが「marketing」のアーカイブページ
elseif( in_cagtegory( 17 ) ) :
    // 現在の投稿がカテゴリーID 17に属する
elseif( in_category( array( 2, 5, ‘marketing’) ) ) :
    // 現在の投稿がカテゴリーID 2または5、またはカテゴリースラッグ「marketing」に属する
elseif( is_tax() ) :
    // タクソノミーのアーカイブページ
elseif( is_tax( ‘os’ ) ) :
    // タクソノミースラッグ「os」のアーカイブページ
elseif( is_tax( ‘os’, array( ‘ipados’, ‘android’ ) ) ) :
    // 「ipados」または「android」というスラッグのついた os タクソノミーのアーカイブページ
elseif( is_archive() ) :
    // あらゆるアーカイブページ
elseif( is_search() ) :
    // 検索結果ページ
elseif( is_404() ) :
    // 404 Not Foundページ
elseif( is_paged() ) :
    // アーカイブページなどの2ページ目以降
elseif( is_singular() ) :
    // 個別投稿ページ、または固定ページ
elseif( is_singular( ‘seminar’ ) ) :
    // 「seminar」カスタム投稿タイプ
elseif( is_singular( array( ‘seminar’, ‘goods’ ) ) ) :
    // 「seminar」または「goods」カスタム投稿タイプ
elseif( is_user_logged_in() ) :
    // ユーザーがログインしている場合
endif;

上記にあげたのは代表的な条件分岐タグです。
より詳しくは公式WordPress Codex「条件分岐タグ」をご覧ください。

サイトの拡張性を飛躍的に高める WordPressプラグイン開発のバイブル

  • はてなブックマーク
  • Pocketに保存