【WordPress】ページの判定と条件分岐
WordPressでサイトを運営していると、固定ページではこういうことをしたい!記事ページではこういうことをしたい!などとそれぞれのページでやりたいことが出てきます。
こういう場合、現在ページのURLなどでページの判定を行い、そこから条件分岐をしなければなりませんが、便利なことにWordPressではデフォルトで現在ページの判定ができる条件分岐タグがあります。
ここではWordPressの条件分岐タグについて説明します。
条件分岐のまとめ
大事なものを最初にということで、WordPressのあらゆるページの判定と条件分岐ができるコードを載せておきます。
//トップページの場合 if( is_home() || is_front_page() ){ //シングル(記事)ページの場合 }elseif( is_single() ){ //固定ページの場合 }elseif( is_page() ){ //カテゴリーページの場合 }elseif( is_category() ){ //タグページの場合 }elseif( is_tag() ){ //検索ページの場合 }elseif( is_search() ){ //404ページの場合 }elseif( is_404() ){ //その他のページの場合 }else{ }
ページの判定の詳細は以下をお読みください。
1.メインページの判定
トップページかどうかを判定するタグ
is_home()
トップページであれば「true」そうじゃなければ「false」を返します。
詳しくはこちら。
条件分岐
上記タグをどのようにして使うか簡単に説明すると、以下のようにif構文などで使用します。
<?php if(is_home()){ trueの場合の処理; }else{ falseの場合の処理; } ?>
2.フロントページの判定
「WordPress管理画面→設定画面→フロントページの表示」で設定した固定ページかどうかを判定するタグ
is_front_page()
フロントページを設定している場合、トップページで「true」となります。
なお、フロントページを設定していない場合(「最新の投稿」にチェックがある場合)でもトップページで「true」を返します。
詳しくはこちら。
3.記事ページの判定
記事ページ(個別投稿ページ)の判定を行うタグ
is_single()
引数に投稿ID、投稿タイトル、スラッグなどを指定できる。
is_single( 'hoge' )
また、それらの配列もOK
is_single( array( 'hoge', 'piyo', 'hogera' ) )
<?php if(is_single( array( 3405, 3409) )){ //ここに処理を記述 }; ?>
詳しくはこちら。
4.固定ページの判定
固定ページの判定を行うタグ
is_page()
「3.記事ページの判定」と同じく、引数に固定ページIDや投稿タイトル、スラッグなどを指定でき、配列でも可能。
詳しくはこちら。
5.カテゴリーページの判定
カテゴリーページ(カテゴリーのアーカイブページ)を判定するタグ
is_category()
引数にカテゴリーIDやカテゴリー名、スラッグなどを指定でき、配列でも可能。
詳しくはこちら。
6.タグページの判定
タグページ(タグのアーカイブページ)かどうかを判定するタグ
is_tag()
引数にスラッグを指定でき、配列でも可能。
詳しくはこちら。
7.アーカイブページの判定
アーカイブページ(日付、カテゴリー、タグ、作成者など)を判定するタグ
is_archive()
詳しくはこちら。
8.そのほか
主に使用するものだけを記述しましたが、他にもたくさんのページ判定のタグがあります。
全ては載せることができないので、詳細はこちらを参考にしてください。
あわせて読んでほしい!
コメント
まだコメントはありません。