is_archive() の使い方|説明・引数・注意点

説明

is_archive() は、アーカイブページ(カテゴリ、タグ、日付、投稿者、カスタム投稿のアーカイブなど)を表示しているかを判定する関数です。

基本構文

is_archive(): bool

引数

引数はありません。

戻り値

条件に当てはまれば true、そうでなければ false。

使い方(サンプル)

if ( is_archive() ) {
	// 何らかのアーカイブ
}

注意点

  • 投稿一覧ページ(is_home())はアーカイブに含まれません。
  • カテゴリ・タグ・タクソノミー・日付・投稿者のアーカイブで true になります。

実務での使いどころ

  • カテゴリー・タグ・日付・著者などのアーカイブ全般で、同じ処理をするとき。
  • アーカイブ共通の見出しや、並び順の表示を出すとき。

よくあるミスと対処

  • 投稿の一覧ページ(ブログトップ)も含まれると思っている。ブログトップは is_home()。
  • 検索結果も含まれると思っている。検索結果は is_search()。

NG例

if ( is_archive() ) {
	// 検索結果やブログトップにも効くつもり
}

OK例

if ( is_archive() || is_home() || is_search() ) {
	// 一覧系のページすべて
}

使い分け早見表

関数 当てはまるページ
is_archive() カテゴリー・タグ・日付・著者・投稿タイプなどのアーカイブ
is_home() 投稿の一覧ページ
is_search() 検索結果

関連項目

is_category()、is_tag()、is_post_type_archive()、is_home()

公式リファレンス:is_archive() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました