内向型人間の知恵ブログ内向型人間の知恵ブログ悩みのタネが、ネタになる。サイトを新しいテーマに変更しました。2019.05.10Tweetシェアブログの末尾には、関連記事がよく表示されています。カテゴリやタグなど、関連性のある記事を提供するものです(Fig1)。新しいテーマを作るにあたり、このブログでも関連記事を実装しようとしていました。WordPressはプラグインは充実していて、関連記事の実装も手軽に行えます。プラグインを入れすぎると処理が負担になるため「プラグインを使わずに実装したい」のが本音です。言うものの、「プラグインで済むもの」をわざわざ解説しているページも少ない。あったとしても「コードのコピペ」で済まされていたりします。今回は、関連記事の表示を実装するアルゴリズムとコードを解説していきます。Fig1.解説する関連記事のイメージ期待する動作・仕様さっそく、実装にはどんな処理が必要か見ていきましょう(Fig2)。表示した記事と関連する記事を表示する表示した記事と同じカテゴリ、またはタグを持っている記事を抽出する投稿(post)の記事を抽出する(固定ページは除外する)(ここでは)抽出する記事数は4件である抽出した記事は、ランダムで並べる表示した記事は、関連記事として扱わない関連する記事を表示する部分は、HTMLとCSSがメインになります。表示するデータを受け渡すには、PHPとWordPressの関数が必要です。Fig2.人間が期待する動作をコンピュータが処理できるようにするどうやって記事を抽出するかWordPressでは、WP_Query関数を使うことで条件に合った記事を取り出すことが出来ます。難しいことをしなければ、おおよその要件を満たしてくれる便利なもの。今回条件として使うパラメータの一例を見てみましょう。Codexには各パラメータが詳しく載っています。投稿を[[投稿タイプ]によって取得する。