WordPressページ送り分割表示部分のテーマPHPソース

1,070views/投稿 2013-03-18/更新 2014-03-18

ページ送りを表示する部分のテンプレートPHPカスタマイズです。

pagenate-php

このようにページ送りを表示することによって過去ページへのナビゲーションになります。1ページに表示する投稿数でページ分割されます。

表示したいところにPHPソースを記述します。

<?php global $wp_rewrite;
$paginate_base = get_pagenum_link(1);
if (strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()) {
$paginate_format = '';
$paginate_base = add_query_arg('paged', '%#%');
} else {
$paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/') .
user_trailingslashit('page/%#%/', 'paged');;
$paginate_base .= '%_%';
}
echo paginate_links( array(
'base' => $paginate_base,
'format' => $paginate_format,
'total' => $wp_query->max_num_pages,
'mid_size' => 3,
'current' => ($paged ? $paged : 1),
)); ?>

'mid_size' => 3, のところの意味は該当ページの前後(左右)にいくつ出しますか?ということで、上部の画像は'mid_size' => 1,にしてある例です。画像例ではページ5の前4と後6を一つずつ表示している事になります。前へと次へと最前部・最後部のページナンバーが表示されます。

CSSのclassは、.page-numbersが全てに適用され、下記がそれぞれ付加されます。

  • prev 前へ
  • next 次へ
  • current 今表示しているページ(spanタグ)
  • dots … のつなぎ(spanタグ)

関連おすすめ記事