© 2023 MNET LLC. All Rights Reserved.

【Part5】記事取得のカスタマイズが捗る。WP_Queryの使い方。日付の指定、投稿ステータスの指定

山下 生真

さてさて、使えるようになると開発が捗りまくるWP_Query。
今回はWP_Queryの使い方第5弾「日付の指定」と「投稿ステータスの指定」についてご紹介します。

その前に基本的なWP_Queryループの使用方法のコードについておさらいしておきましょう。

<?php
 $args = array(
  'post_type' => 'post', //投稿タイプの指定
  'posts_per_page' => '-1' //表示件数を指定。-1は全件表示
  'order' => 'DESC' //昇順・降順の表示順を指定
 );
 
 $the_query = new WP_Query($args);
 if($the_query->have_posts()): while($the_query->have_posts): $the_query->the_post();
?>

ループの中身の記述

<?php endwhile; endif; wp_reset_postdata(); ?>

カテゴリーの指定

あるカテゴリ―に関連付けられた投稿を表示します。

<?php
 $args = array(
  'cat'              =>  4,       //カテゴリ―のIDを指定(整数)
  'category_name'    => 'news',        //カテゴリ―のスラッグ(カテゴリ名ではありません)を指定(文字列)
  'category__and'    => array(4, 6),   //指定したIDのカテゴリを全て含む投稿を取得(配列)
  'category__in'     => array(5, 7),   //指定したIDのカテゴリのいずれかを含む投稿を取得(配列)
  'category__not_in' => array(5, 7)    //指定したIDのカテゴリを含まない投稿を取得(配列)
 );
?>

タグの指定

あるタグに関連付けられた投稿を表示する。

<?php
 $args = array(
  'tag_id' => 5,                   //タグのIDを指定(整数)
  'tag' => 'css',                  //タグの文字列を指定(文字列)
  'tag__and' => array( 1, 6 ),     //指定したタグのIDの全てを含む投稿を取得(配列)
  'tag__in' => array( 1, 6 ),      //指定したタグのIDのいずれかを含む投稿を取得(配列)
  'tag__not_in' => array( 1, 6 ),  //指定したタグのIDを含まない投稿を取得(配列)
  'tag_slug__and'=> array( 'html', 'css' ),  //指定したタグのスラッグを全て含む投稿を取得(配列)
  'tag_slug__in'=> array( 'html', 'css' )    //指定したタグのスラッグを含まない投稿を取得(配列)
 );
?>

ワードプレス学習にお勧めの書籍

ビジネスサイトを作って学ぶ WordPressの教科書 Ver.5.x対応版

こちらの書籍はデモサイトを作りながらワードプレスで最低限使うであろう技術が詰まった一冊です。この本を何度か学習することによりワードプレスの基本的な考え方から少し応用に踏み込んだところまでの技術が身に着きます。

WordPressデザインレシピ集

こちらの書籍はデモサイトを制作して動きを把握するというより、辞書的な立ち位置の本なのかな?と思います。リファレンスが読みにくいときに各メソッドやクラスの内容を簡潔に使用例も交えて紹介してくれているので「あれ?あの処理はどうするんだっけ?」というようなときに辞書として重宝しております。

山下 生真

役員

建築家を志し京都の大学を卒業。様々な業種を経て、IT業界に心惹かれ、一心発起し、プログラミングスクールに業務の傍ら通う。趣味のYouTubeの動画編集・撮影活動で現CEOと出会う。幼少期からの夢であった”魔法使いになってみんなの役に立つ”実現の為、IT技術を駆使し、世の中の役に立つことを目標に起業。座右の銘は”野心・向上心”。

HOT TOPICS
人気の記事

全て見る