目次
はじめに
福岡のホームページ制作・SEO対策の株式会社スゴヨクです。
WordPressの個別投稿ページでは、表示中の投稿に合わせて関連記事の一覧を表示させたいということがあると思います。
ただ投稿の一覧を表示させようとすると、現在表示中の記事も一緒に出てきてしまうことになります。
関連記事一覧から現在表示中の記事をはぶくという条件付けは簡単に実装可能なので、なるべくわかりやすく書き残しておきたいと思います。
→「繰り返しフィールドの数によってページネーションを実装したい!」はこちらから現在表示中の記事以外の一覧を取得するには?
おおまかな流れとしては、記事一覧を取得するのに必要な「WP_Query」を定義する際に、
①まず現在表示中の記事のIDを取得する。
②取得したIDの記事を除外するという条件を加える。
ということを行います。
'post', // 投稿タイプを指定 "posts_per_page" => 10, // 表示する記事数を指定 "post__not_in" => [$current_post_id] // 除外する記事のIDを指定 ]; $post_query = new WP_Query($args); ?>
「’post__not_in’」を使うことで、特定の記事を除外(取得しない)ということを設定することができます。
ここでは現在表示中の記事のIDを用いることで、これを除外するという設定を行っています。
おわりに
WordPressの個別投稿ページで、関連記事一覧から現在表示中の記事を除くというのはよくあることだと思います。あっという間に実装可能なのでとてもありがたいですね。
WordPress勉強中の方、駆け出しの方の参考にしていただけたら幸いです。