[wordpress] 同じカテゴリ内記事で前の記事/次の記事へのリンク

wordpressの個別記事ページで前後の記事へリンクを貼るとき、前の記事へリンクはprevious_post_link()タグを次の記事へリンクはnext_post_link()タグを使うことがあります。こんな感じでしょうか。

<p class="pager">
<?php previous_post_link(); ?>
<?php next_post_link(); ?>
</p>

また初期値とは別にリンクの書式を変えたときなんかは第1引数にリンクの書式を第2引数にそのリンクの文言を記述して各々お決まりのパターンなんかを持たれている人もいると思います。

<p class="pager">
<?php previous_post_link('<span>%link</span>', '前の記事'); ?>
<?php next_post_link('<span>%link</span>', '次の記事'); ?>
</p>

先日お仕事で前の記事へリンク・次の記事へリンクを同じカテゴリ内の記事だけで遷移させたいとの要望がありました。最近この手の実装をしてなかったせいかどうやってしてたっけ?と記憶が曖昧だったのでWordPress Codexprevious_post_link()タグnext_post_link()タグについて見てみたらあっさり解決。第3引数にTRUEを指定すれば同一カテゴリ内の記事だけでページ遷移させることができるとのこと。

<p class="pager">
<?php previous_post_link('<span>%link</span>', '前の記事', TRUE); ?>
<?php next_post_link('<span>%link</span>', '次の記事', TRUE); ?>
</p>

第4引数で特定のカテゴリーを除外することも可能らしい。このタグってこんなに使い勝手よかったっけ?もともと自分は意識せずして知ってて使ってたのかな?などなど思うところもありますが頭がクリアなうちに備忘録がてらこの記事を。

  • 2014.03.21
  • お仕事っぽいこと