is_archive()とは、アーカイブページであるということを示す条件タグです。
使うときは以下のように使います
1 2 3 4 5 6 7 |
<?php if( is_archive() ) { // 投稿一覧ページでのみ行いたい処理 } else { // その他で行う処理 } ?> |
ところが、設定 > 表示設定 で、一覧ページ用の固定ページを指定している(例:infoとか)場合、一覧ページと判別してくれません。
そんなときはis_home()を使いましょう。
1 2 3 4 5 6 7 |
<?php if( is_home() || is_archive() ) { // 投稿一覧ページ及びアーカイブページでのみ行いたい処理 } else { // その他で行う処理 } ?> |
is_home()だけだと全記事一覧ページしか判別してくれない可能性があるので、is_archive()も加えてやることで、カテゴリーページや年別アーカイブページも判別してくれるようになります。
もしかするとトップページでis_home()を使用している方もいるかもしれませんが、
トップページはis_front_page()で分岐してやるのが正しいです。