投稿ページの前後ページナビをカテゴリ限定にする方法

カスタマイズ
WordPressカテゴリー
Pocket

WordPressの投稿ページに前後の記事を行き来するナビゲーションをつけることができますが、デフォルトではカテゴリーなど関係なく前後の投稿ページへ移動してしまいます。

今回は簡単に同一カテゴリーの投稿ページへ移動できるようにする方法をご紹介します。
プラグインは必要なくWordPressの標準機能で実現できます。

前後ナビゲーションを設置する

まずは前後ナビゲーションを設置します。
カテゴリーなど関係なく単純に前後ナビゲーションを設置するならこのテンプレートタグを使うのが一番簡単です。

<?php posts_nav_link(); ?>

いくつかパラメータもありカスタマイズできます。詳しくはテンプレートタグ/posts nav linkをご覧ください。

でもそれでは今回の目的はできません。今回は次の2つのタグを使います。

<!-- 現在の投稿より古い投稿へのリンク -->
<?php previous_post_link( '&laquo; %link', %title, false, ''); ?>

<!--  現在の投稿より新しい投稿へのリンク  -->
<?php next_nav_link( '%link &raquo;', %title, false, ''); ?>

※パラメータは初期値です。()内は空でもリンクは表示されます。

移動を現在の投稿と同じカテゴリーに限定する

今回の目的『カテゴリーを限定した前後のページ移動』にするのは、なんと false を true にする。たったこれだけです。

<!-- 現在の投稿より古い投稿へのリンク -->
<?php previous_post_link( '&laquo; %link', %title, true, ''); ?>

<!--  現在の投稿より新しい投稿へのリンク  -->
<?php next_nav_link( '%link &raquo;', %title, true, ''); ?>

はい、これでカテゴリーを限定した前後のページ移動ができました。