ダリの雑記:WEBプログラム版

WordPressでページネイション

このプログラムは、コリスさんのサイトにある「WordPressにプラグイン無しでページネーションを設置する方法」を少し改造したものです。

[PHP]

function custom_pagination($pages = '', $range = 2){

$showitems = ($range * 2)+1;

global $paged;
if(empty($paged)) $paged = 1;

if($pages == ''){
global $wp_query;
$pages = $wp_query->max_num_pages;
if(!$pages){
$pages = 1;
}
}

if(1 != $pages){
echo '

';
}
}

[/PHP]

改造箇所

もともと利用させていただいたプログラムでは、5ページ分のナビゲーションを出すつもりでも、1~2ページ目までは5ページ分のナビゲーションが出ず、3ページ目になって、ようやく5ページ分のナビゲーションが出るという仕組みでした。(下図参照)

1ページ目のナビゲーション

2ページ目のナビゲーション

3ページ目のナビゲーション

4ページ目のナビゲーション

これでも特に問題はないのですが、できれば3ページ目以降のように、ナビゲーション数は常に一定数を保ちたいと思い、常に5ページ分のナビゲーションが出るように改造しました。(当然ですが5ページ分のナビゲーションが出るのは5ページ分の投稿数がある場合です。2、3、4ページ分しか投稿数が無い場合は2、3、4ページ分のナビゲーションしか出ません。)

なお、ページのナビゲーション数を増やしたい場合は第2引数のrangeに表示したい数の「半分-1」の数値を入れてください。(5ページなら2、7ページなら3、9ページなら4といった感じ。)

モバイルバージョンを終了