get_query_var( ‘paged’, 1 )を指定した際の落とし穴

今更ながら気付いたことである。

get_query_var( ‘paged’, 1 )を指定してページを「1」として取得しようとした際に、どうやってもpagedが「0」となってしまい、「1」にできないので2分ほど思考が停止した。

 

少し考えると、これは確かに当たり前の話であると思い、その際に行った対処法を残しておくことにする。

人によっては何を今更wwwと思われるかも知れない内容。

 

このget_query_var( ‘paged’, 1 )、実はこれ単体での指定としてはあまり意味がない。

というのも、pagedは1ページ目が表示されている際も、パラメータ値としては「0」が入っている。

get_query_varの第二引数は「当該のパラメータが存在しないときに有効な引数である」ということ。

つまり、第一引数にpagedを指定しようが、「0」と言う値が既に入っているので「パラメータが存在しない」というふうにはならない。

 

なので、これを「1」にして取得したい場合、以下のようにする。

$paged = 0 == get_query_var( 'paged', 0 ) ? 1 : get_query_var( 'paged', 1 );

 

これで1ページ目(pagedが「0」)の際は「1」が$paged変数に代入される。

 

 

・・・てか、本当に今更という内容。

5月ならざるこの蒸し暑さのせいで頭がアヘってるのかも知れない。

カテゴリ

この記事のコメント

コメントはないです。

コメントを残す

メールアドレスが公開されることはありません。