WordPressで記事IDを指定して、タイトルやサムネイル画像を取得する方法
※記事の情報は執筆時点のものとなります(7年前の投稿)
わが家が運営するブログ「沖縄移住ライフハック」のトップページに、ピックアップ記事のリストをつけました。
これを実装するときに、記事IDを指定してタイトルやサムネイル画像を取得する方法を調べたので、メモがてら書いておきます。
- スポンサーリンク
記事IDを指定して取得
記事のIDは、仮で「9999」としています。あと、戻り値を返すだけのコードはechoして出力するように記述しています。
記事タイトルを取得
get_post関数というのがあって、これを使うと、記事のIDで指定した投稿のいろいろな情報をデータベースから取得できるそうです。
今回はタイトルなので「post_title」を指定。
記事へのリンクを取得
記事へ飛ぶURLなら、「get_permalink」タグで出力できます。
記事のサムネイル画像を取得
記事のアイキャッチに指定した画像を取得する場合は、「get_the_post_thumbnail」タグでいけます。
画像の「URL」だけ取得したい場合はwp_get_attachment_image_srcってやつでいけます。
使い方の例
今回の沖縄移住ライフハックのケースだと、記事IDを事前に配列に入れておいて、いくつか記事を出しました。for文やwhile文で回せば出力できます。実際のコードじゃないですけど、例えば、こんな感じに実装すると動くってコードを載せておきます。
このコードは動作未検証です。ご利用になる際は、必ずテストをしてください。
記事一覧みたいなものだからwhileがよかったかな……。
ちょっと原始的なやり方なので実用の際は、ひと手間加えたほうがいいかもです。PHPのcount()で配列数を取得しています。
これを走らせると、多分こんな感じのHTMLが出力されるはずです。
カスタムの記事一覧の出来上がりですね。
WordPressのカスタムに慣れてくると、要所要所で特定の記事要素を表示したくなるので、IDで指定してタイトルやリンク、画像を取得する方法を知っていると便利ですよー。
※記事で紹介したコードは動作を保証するものではございません。必ず自己責任で使用してください。コードを使う際はテストを行い、動作検証をおこなってください。