© 2023 MNET LLC. All Rights Reserved.

【Part7】記事取得のカスタマイズが捗る。WP_Queryの使い方。カスタムフィールドの指定編

山下 生真

使いこなすと開発が捗りまくるWP_Query。
今回はWP_Queryの使い方第7弾「カスタムフィールドの指定」についてご紹介します。

その前に基本的な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(); ?>

カスタムフィールドの指定

あるカスタムフィールドに関連付けられた投稿を表示します。

key・valueを一つずつ指定する場合

<?php
 //カスタムフィールドの値が文字列の場合
 $args = array(
  'meta_key' => 'name',
  'meta_value' => 'tanaka',
  'meta_compare' => '=',
 );

 //カスタムフィールドの値が数値の場合
 $args = array(
  'meta_key' => 'number',
  'meta_value_num' => 100,
  'meta_compare' => '>',
 );
?>

・meta_key:カスタムフィールドのキーを指定
・meta_value:カスタムフィールドの値を指定(文字列を指定)
・meta_value_num:カスタムフィールドの値を指定(数値を指定)
・meta_compare:使える値は以下

データ型意味有効なデータ型
‘=’値と一致するすべて
‘!=’値と一致しないすべて
‘>’値より大きい数値・日時
‘>=’値以上数値・日時
‘<‘値より小さい数値・日時
‘<=’値以下数値・日時
‘LIKE’値で指定した文字列に一致する‘CHAR’
‘NOT LIKE’値で指定した文字列に一致しないCHAR
‘IN’値で指定したいずれかに一致するすべて
‘NOT IN’値で指定したいずれかに一致しないすべて
‘BETWEEN’2つの値で指定した範囲内数値・日時
‘NOT BETWEEN’2つの値で指定した範囲外数値・日時

key・valueを複数指定する場合

<?php
 $args = array(
  'meta_query' => array(                //カスタムフィールドに関するパラメーターをまとめた配列
   array(
    'key' => 'color',                 //カスタムフィールドのキーの指定
    'value' => array('red', 'blue'),  //カスタムフィールドの値の指定
    'type' => 'CHAR',                 //カスタムフィールドの値の型が何か教える
    'compare' => 'IN',                //'value'パラm-たの値に対する論理間関係を指定
   );
  );
 );
?>

・meta_query:カスタムフィールドパラメーター。この配列に情報を入れていく
・relation:meta_query の中に複数の配列を入れたときの論理値関係。使える値は’AND’と’OR’(デフォルトは’AND’)
・key:カスタムフィールドのキー
・value:カスタムフィールドの値。配列を指定できるのはcompareが’IN’,’NOT IN’,’BETWEEB’または’NOT BETWEEN’の場合のみ
・type:カスタムフィールドの値のタイプ。使える値は以下。

データ型意味
‘CHAR’文字
‘NUMERIC’SIGNEDの別名
‘DECIMAL’浮動小数点数
‘SIGNED’整数(符号あり)
‘UNSIGNED’整数(符号なし)
‘DATE’日付
‘DATETIME’日時
‘TIME’時刻
‘BINARY’バイナリー

・’compare’:key、valueを一つずつ指定する場合のmeta_queryと同じになる

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

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

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

WordPressデザインレシピ集

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

山下 生真

役員

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

HOT TOPICS
人気の記事

全て見る