今回はWPの投稿に簡単にページ送りボタンを追加できるプラグイン
「WP-PageNavi」をご紹介します。
まずは下記からダウンロードしましょう。公式プラグインですので、管理画面からも追加可能です。
https://ja.wordpress.org/plugins/wp-pagenavi/
インストールが完了したら、管理画面の「設定」から詳細設定が可能です。
テーマに設置する際は、下記を設置した箇所にペーストしてください。
<?php wp_pagenavi(); ?>
もし上手く動かない、表示されないという方がいたら、
まずは管理画面の「設定>表示設定」で1ページに表示する記事数を確認してください。
また、固定ページにWP_Queryを使ってサブループを作成している場合には、
wp_pagenaviにサブループの情報を引数で渡してあげる必要があります。
<?php
$paged = get_query_var('paged'); //ページ数を取得
$arg = array(
'post_type' => 'post', //カスタム投稿の場合は変更してください
'posts_per_page' => 10, //1ページに表示する投稿数
'order' => 'DESC', //降順
'paged' => $paged //ページ数を取得
);
$my_query = new WP_Query($arg);
if($my_query->have_posts()):
?>
<ul>
<?php while($my_query->have_posts()) : $my_query->the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><span class="post-date"><?php the_time('Y.m.d'); ?></span><span class="post-list-title"><?php the_title(); ?></span></a></li>
<?php endwhile; ?>
<?php else : ?>
<li><p>見つかりません。</p></li>
<?php endif; ?>
</ul>
<?php wp_pagenavi(array('query' => $my_query)); ?> //サブループを引数で渡す
<?php wp_reset_postdata(); ?>
これで恐らくちゃんと動くはずです。
他にうまく動かないケースとしては、固定ページにループを記述している場合に、
カスタム投稿名と、固定ページのスラッグが同じだと正しく動作しませんでした。
また、固定フロントページの場合にも、ページ数取得箇所の記述に違いがあります。
$paged = get_query_var('page'); //固定フロントページでページ数を取得
ここまで確認すれば大抵の環境で動作するはずです。




