WordPress

WordPressでプラグインは使わずに関連記事を表示する方法

2017/11/20

ブログサイトなどを見ていると記事の終わりに関連記事が表示されているのを見たことがあると思います。
プラグインを使えば簡単に表示できたりもするのですがプラグインに頼りっきりだとアップデートの機会に使えなくなってしまう恐れもあります。
そのため今回はプラグインを使わずに関連記事を表示する方法を紹介したいと思います。

同じカテゴリーの最新記事を表示する(現在表示している記事を除外)

良く使うパターンですね。
出力したい部分にこちらのコードを記述します。

コード内に補足説明を入れていますが、ポイントはpost__not_inで取得した投稿IDの記事を除外(現在表示している記事を除外)するところです。
それと関連記事がなかった場合に「○○の最新記事」とタイトルだけが表示されている状態はおかしいので、投稿がない場合の記述もしています。

出力結果はこちら。

同じカテゴリーの最新記事をサムネイル付きで表示する(現在表示している記事を除外)

やっぱり画像もあった方が見栄えがいいよねって場合はこちらのコードを使います。

サムネイル画像があればその画像を呼び出す。なければあらかじめ用意したNO-IMAGE画像を呼び出しています。
この場合の出力結果はこうなります。

ランダムに同じカテゴリーの記事をサムネイル付きで表示する(現在表示している記事を除外)

今度は最新記事を表示するのではなく、同じカテゴリーの記事をランダムに表示する場合です。
過去の記事は埋もれてしまいがちなので、ランダムに表示させることによってまた見てもらえる可能性がアップします。

先ほどまでのコードと基本は同じですが、'orderby' => 'rand',という記事をランダムに表示させるコードを追加しています。

出力結果はこちら。

画面が表示される度にランダムで表示されるので、毎回違う記事が表示されることになります。

可読性を考慮してテンプレート化

single.phpなどに今までの記述をすることで関連記事の表示が可能になりました。
ただ若干コードが長いので可読性は下がります。
もし、そこらへんが気になる方はテンプレート化して呼び出す方法もありです。

例えば先ほどまで記述していたものを「relation-post.php」などの名前で一つのファイルとして保存します。
そして、出力したい場所に以下の記述をすればテンプレート化したファイルを呼び出せます。

いかがでしたでしょうか。
これをベースに投稿の本文や日付を足したり、色々カスタムをしていただければと思います。

SPONSORED LINK

シェアはこちらから

関連記事