Google風の1,2,3といったページネーション付きの、タイトル、詳細をブログ形式で一覧出力する場合は下記のようになります。
<?php
// カテゴリーの詳細データを取得
$cat_info = get_category( $cat );
/*
ページナビゲーションの作成
*/
global $pg_navi;
// URLの取得
$paginate_base = get_pagenum_link(1);
// クエリ文字列がある場合
if ( strpos($paginate_base, '?') ) {
$paginate_format = '';
$paginate_base = add_query_arg('paged', '%#%');
// クエリ文字列がない場合
} else {
$paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/')
. user_trailingslashit('page/%#%/', 'paged');
$paginate_base .= '%_%';
}
$pg_navi = paginate_links( array(
'base' => $paginate_base,
'format' => $paginate_format,
'total' => $wp_query->max_num_pages,
'mid_size' => 7,
'current' => ($paged ? $paged : 1),
));
echo '<div class="page-navi">' . "\n" . $pg_navi . "</div>\n";
// 記事一覧の出力
while ( have_posts() ){
the_post();
get_template_part( 'content', get_post_format() );
}
?>
ページナビゲーションはグローバル変数にしているので、複数出力することもできます。
<?php echo $pg_navi; ?>