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

説明

is_paged() は、複数ページに分かれたアーカイブの2ページ目以降を表示しているかを判定する関数です。

基本構文

is_paged(): bool

引数

引数はありません。

戻り値

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

使い方(サンプル)

if ( is_paged() ) {
	// 2ページ目以降
}

注意点

  • 1ページ目では false です。
  • 投稿本文内の分割(<!--nextpage-->)ではなく、一覧のページ送りが対象です。

実務での使いどころ

  • 2ページ目以降の一覧で、ページ番号を表示するとき。
  • 2ページ目以降に noindex を付けるなど、SEOの処理を分けるとき。

よくあるミスと対処

  • 記事を分割(<!--nextpage-->)した個別ページの、2ページ目以降では false になる。分割ページの番号は get_query_var( 'page' ) で取得する。
  • ページ番号の取得に get_query_var( 'paged' ) を使う。is_paged() は真偽を返すだけ。

NG例

if ( is_paged() ) {
	// 分割した記事の2ページ目で判定するつもり(入らない)
}

OK例

$page = get_query_var( 'page' );
if ( $page > 1 ) {
	// 分割した記事の2ページ目以降
}

使い分け早見表

やりたいこと 使うもの
一覧の2ページ目以降か is_paged()
一覧のページ番号 get_query_var( 'paged' )
分割した記事のページ番号 get_query_var( 'page' )

関連項目

get_query_var()、is_archive()

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

コメント

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