【WordPress】同じカテゴリ内でのページ送りにする方法

投稿記事の最後に付く「前の記事へ」「次の記事へ」というページ送りナビ。便利ですよね。

デフォルトだと全ての記事が対象となり、「前の記事へ」をクリックすると1コ前の投稿に飛び、「次の記事へ」をクリックすると1コ後の投稿に飛ぶ。

さまざまなカテゴリの記事を書いているブログの場合、同じカテゴリ内の記事を対象として「前の記事へ」「次の記事へ」で飛んでほしいという要望があると思います。

テーマ「Simplicity2」での設定方法

子テーマSimplicity2 childを使っていることを前提とします。

・FTPソフトでWordPressサーバに接続し、WordPressのインストールフォルダを探す。

・その下にあるフォルダthemes直下のフォルダsimplicity2内にある以下の2ファイルをコピーし、フォルダthemes直下のフォルダsimplicity2-child内に置く

  pager-post-navi-thumbnail.php
  pager-post-navi.php

・WordPressの管理画面(ダッシュボード)で、[外観]-[テーマの編集]を選択。
 右側上部の編集するテーマを選択で「Simplicity2 child」を選択

・その下部にある「テンプレート」項目のpager-post-navi-thumbnail.phpをクリックし、以下の部分を修正する(下線部分)

修正前:$prevpost = get_adjacent_post(false, ”, true); //前の記事
 ↓
修正後:$prevpost = get_adjacent_post(true, ”, true); //前の記事

修正前:$nextpost = get_adjacent_post(false, ”, false); //次の記事
 ↓
修正後:$nextpost = get_adjacent_post(true, ”, false); //次の記事

・同様に「テンプレート」項目のpager-post-navi.phpをクリックし、以下の部分を追加する(下線部分)

修正前:$prev_post = get_previous_post();
 ↓
修正後:$prev_post = get_previous_post(true, ”, ‘category’);

修正前:
 <div class=”prev”><?php previous_post_link(‘%link’, ‘<span class=”fa fa-arrow-left fa-2x pull-left”></span>’.$prev_post->post_title); ?></div>
 ↓
修正後:
 <div class=”prev”><?php previous_post_link(‘%link’, ‘<span class=”fa fa-arrow-left fa-2x pull-left”></span>’.$prev_post->post_title,true); ?></div>

修正前:$next_post = get_next_post();
 ↓
修正後:$next_post = get_next_post(true, ”, ‘category’);

修正前:
<div class=”next”><?php next_post_link(‘%link’, ‘<span class=”fa fa-arrow-right fa-2x pull-left”></span>’.$next_post->post_title); ?></div>
 ↓
修正後:
<div class=”next”><?php next_post_link(‘%link’, ‘<span class=”fa fa-arrow-right fa-2x pull-left”></span>’.$next_post->post_title,true); ?></div>

以上が、同じカテゴリ内でのページ送りにする方法になります。

スポンサーリンク

フォローする

トップへ戻る