本文へ移動

Builder

WP Query Builderの詳細設定の使い方
|条件を組み合わせてコードを作る手順

詳細設定は、シンプル設定の基本項目に加え、投稿ID・投稿者・Tax Query・Meta Query・Date Query・Performance / Cacheなどを直接指定するモードです。この記事ではevent_dateが基準日以上のworksを昇順で取得します。

Huddly Huddly 投稿日: 2026年9月19日 読了目安: 4分

詳細設定は、複雑な条件を必要なセクションだけ開いて作ります

投稿ID・投稿者・Tax Query・Meta Query・Date Query・Performance / Cacheを指定するなら、詳細設定を使います。すべての項目を埋めるのではなく、まず基本設定を決め、必要なセクションだけ入力します。

ここでは2026年9月14日以降に開催するworksを、開催日の早い順に最大6件取得します。公開中のWP Query Builderが生成した未編集コードを子テーマへ置き、ID92・93・94が返るところまで確認します。

詳細設定を使う条件を1文にしてから入力する

先に「何を、どの条件で、何順に、何件取得するか」を1文にします。この記事の要件は「2026年9月14日以降に開催するworksの公開投稿を、開催日の早い順に最大6件取得する」です。画面へ入力するときは、2026年9月14日を保存形式に合わせた20260914へ置き換えます。

要件WP Query Builderで使う場所入力
何を取る基本設定custom → works
公開範囲基本設定publish
最大件数基本設定6
絞り込みMeta Queryevent_date >= 20260914 / NUMERIC
並び順ページング / 並び順meta_value_num / ASC

カテゴリー・タグ・キーワードだけの一覧なら、シンプル設定の方が短い画面で完了します。詳細項目が本当に必要か迷う場合は、比較記事で作りたい条件ごとの選択を確認してから戻ってください。

入力前にモードを選ぶWP Query Builderのシンプル設定と詳細設定の違い記事を読む

詳細設定へ基本項目とMeta Queryを入力する

画面上部の「詳細設定(全項目)」を選び、「全項目を開く」を押します。基本設定は上から入力します。

基本設定の入力順

  1. 1
    投稿タイプでcustom(手入力)を選ぶ
  2. 2
    カスタム投稿タイプへworksを入力する
  3. 3
    公開状態でpublishを選ぶ
  4. 4
    取得件数へ6を入力する
  5. 5
    並び方向でASCを選ぶ
  6. 6
    並べ替えの基準でmeta_value_numを選ぶ

まず基本設定と並び順を入れると、どの投稿を何件、どの順番で取得するかが決まります。この段階で右側のコードへworks、6件、昇順が反映されたことを確認します。

公開中WP Query Builderで詳細設定が選択され、投稿タイプcustom、カスタム投稿タイプworks、公開状態publish、取得件数6と右側のコードが表示された画面
公開中WP Query Builderの実画面詳細設定の入口から基本条件を決める

customを選んでworksを入力すると、生成されたコードではpost_typeにworksが入ります。

customはコードにそのまま出る値ではありません。入力欄のworksが、生成コードのpost_type => ‘works’になります。対象サイトに登録された実際の投稿タイプ名を使ってください。

Meta Queryへevent_dateの基準値と型を入力する

「Meta Query(カスタムフィールド)」の条件1へ、キーから順に入力します。キーを入れると、値・比較方法・値の型が編集できるようになります。

入力欄値意味
キー / keyevent_date保存されているカスタムフィールド名
値 / value20260914基準日のYmd値
比較方法 / compare>=基準日を含む未来
値の型 / typeNUMERIC8桁値を数値として比較

並べ替えの基準にmeta_value_numを選ぶと、WP Query Builderは同じevent_dateをmeta_keyにも出力します。絞り込み用のmeta_queryだけでは並び替えの対象キーが確定しないためです。

この記事では、入力した条件とコードをそのまま見比べるため、自動高速化をOFFにしています。

WP Query BuilderのMeta Query条件1へevent_date、20260914、比較方法>=、値の型NUMERICを入力し、右側にmeta_queryとmeta_keyが生成された画面
入力と配列の階層を対応させる4つの入力が1つのMeta Query条件になる

meta_value_numの並び替えに必要なmeta_keyも同時に生成されます。

次は、WP Query Builderがこの画面から生成した未編集コードです。

引数や処理の一部分だけを示した例です。このまま単独で貼らず、テンプレート内のWP_Queryとループへ組み込んでください。

PHPgenerated-detail-event-args.php基準日以降のworksをevent_date昇順に取得する条件
$args = array(    'post_type' => 'works',    'post_status' => 'publish',    'posts_per_page' => 6,    'order' => 'ASC',    'orderby' => 'meta_value_num',    'meta_query' => array(        array(            'key' => 'event_date',            'compare' => '>=',            'type' => 'NUMERIC',            'value' => 20260914        )    ),    'meta_key' => 'event_date');

子テーマのイベント用テンプレートパーツへ置く

クラシックテーマの子テーマへtemplate-parts/upcoming-events.phpを作ります。WP Query Builderが生成した$argsは変更せず、表示ループと0件時の案内を加えます。

PHPtemplate-parts/upcoming-events.php基準日以降のイベントを開催日順に表示する
<?php$args = array(    'post_type' => 'works',    'post_status' => 'publish',    'posts_per_page' => 6,    'order' => 'ASC',    'orderby' => 'meta_value_num',    'meta_query' => array(        array(            'key' => 'event_date',            'compare' => '>=',            'type' => 'NUMERIC',            'value' => 20260914        )    ),    'meta_key' => 'event_date'); $upcoming_events = new WP_Query( $args ); if ( $upcoming_events->have_posts() ) :    ?>    <section aria-labelledby="upcoming-events-title">        <h2 id="upcoming-events-title">開催予定のイベント</h2>        <ul>            <?php while ( $upcoming_events->have_posts() ) : ?>                <?php $upcoming_events->the_post(); ?>                <li>                    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>                    <span><?php echo esc_html( get_post_meta( get_the_ID(), 'event_date', true ) ); ?></span>                </li>            <?php endwhile; ?>        </ul>    </section>    <?phpelse :    echo '<p>開催予定のイベントはありません。</p>';endif; wp_reset_postdata();

固定ページ用のpage-events.phpで、メインループ内のthe_content()の後から1回だけ呼びます。

引数や処理の一部分だけを示した例です。このまま単独で貼らず、テンプレート内のWP_Queryとループへ組み込んでください。

PHPpage-events.phpイベントページ本文の後へ開催予定一覧を読み込む
<?phpwhile ( have_posts() ) :    the_post();    the_content();    get_template_part( 'template-parts/upcoming-events' );endwhile;?>

event_dateの保存形式と画面表示は分けて考えます。この例はYmdの8桁を保存して比較する前提です。2026-09-14のような形式を保存しているサイトへ、そのまま流用しないでください。

同じ保存形式の実データで3件を確認する

分離したWordPressへ、2026年9月14日のID92、9月20日のID93、10月3日のID94、前日のID95、未入力のID96を用意しました。WP Query Builderが生成した未編集コードでは、基準日を含むID92・93・94が開催日の早い順に返ります。

分離したWordPressでevent_dateが20260914以上のID92、93、94が保存値と開催日を伴って昇順に表示された画面
実際のWP_Query結果基準日を含む3件を開催日順に取得

前日のID95とevent_date未入力のID96は対象外です。

日付の保存値、当日を含む境界、毎日変わる基準日の作り方まで実装したい場合は、イベント一覧の記事へ進んでください。WP Query Builderの操作後に読むと、固定値のサンプルを本番向けのcurrent_time(‘Ymd’)へ置き換える判断ができます。

イベント一覧の実装へ進むWP_Queryでイベント一覧を作る方法記事を読む

条件を追加するときは内側のrelationを確認する

Meta Queryの条件を2件以上追加すると、同じmeta_query内でrelationを選べます。Tax Queryにも独立したrelationがあり、Meta QueryとTax Queryをまたいだ外側の条件は原則ANDです。

カテゴリー、カスタムフィールド、日付を一緒に使う場合は、次の記事で同じ種類の条件どうしをつなぐ場合と、異なる種類の条件を$args直下へ並べる場合を整理してから増やしてください。0件になったときに、どの条件から外して確認するかも分かります。

複数条件の組み方を確認するWP_Queryで複数条件を組み合わせる方法記事を読む

シンプル設定へ切り替えても詳細条件は残る

詳細設定からシンプル設定へ切り替えても、入力済みの基本設定は引き継がれます。Meta Queryなどシンプル設定に表示されない条件も消えず、生成コードへ反映され続けます。画面には「詳細条件がコードに反映されています」と案内されるため、短い画面に戻っただけで条件を外せたと判断しないでください。

詳細条件を外す場合は「詳細設定で確認」から詳細設定へ戻り、不要な条件を空にします。すべての入力をやり直すなら「入力をリセット」も使えますが、確認後は基本設定を含むフォーム全体が初期状態へ戻るため、残したいコードを先に控えてください。

カテゴリーやタグだけの単純な一覧として作り直す場合は、詳細条件を消したことを生成コードで確かめてから、シンプル設定へ切り替えると入力漏れを見つけやすくなります。

シンプル設定でどの欄を上から入力し、どこへコードを置くかを確認したい場合は、次の記事でカテゴリー一覧を完成させてください。

シンプル設定へ戻るWP Query Builderのシンプル設定の使い方記事を読む

詳細設定で必要な条件だけを組む

基本設定を決めてから、Tax Query・Meta Query・Date Queryなど必要なセクションだけを入力してください。生成コードは実データの保存形式と取得IDで確認します。

入力欄・生成配列・保存値を順に見比べる

複雑な条件ほど、画面の入力値だけでなく、WordPressへ保存された値と取得結果を分けて確認します。

詳細設定の確認順

  1. 1
    要件を何・条件・順番・件数の1文にする
  2. 2
    基本設定を入力する
  3. 3
    必要な詳細セクションだけ入力する
  4. 4
    生成コードで条件の階層と各値を見比べる
  5. 5
    カスタムフィールドの実際の保存形式を確認する
  6. 6
    子テーマのテンプレートパーツへ置く
  7. 7
    境界・対象外・未入力の投稿で取得IDを確認する
  8. 8
    独自ループ後の表示が元ページへ戻るか確認する

詳細設定の最終チェック

  • 対象サイトの投稿タイプ名を確認した
  • Meta Queryはキーから入力した
  • 値・比較方法・値の型を保存形式に合わせた
  • orderbyとmeta_keyの対応を確認した
  • 自動高速化のON・OFFを意図して選んだ
  • WP Query Builderが生成した$argsを未編集で控えた
  • 設置ファイルと呼び出し位置を記録した
  • 境界値と未入力を実データで確認した
  • wp_reset_postdataを実行した

Meta Queryと並び替えの仕様を公式資料で確認する

WP Query Builderの画面表示と合わせて、カスタムフィールド条件と並び順の仕様を公式資料で確認します。

詳細設定のよくある質問

入力順、保存形式、シンプル設定との使い分けで迷いやすい点をまとめます。

WP Query BuilderBuilderで条件を組み直す条件を選び、WP_Queryのコードを画面で作れます。Builderでクエリを作る

この記事を書いた人

Huddly

Web制作 / フロントエンドエンジニア

WordPressとフロントエンド実装で迷いやすい点を、公式情報と検証結果を分けながら、初学者にも追いやすい順序で整理しています。

この記事の検証情報

検証環境

WordPress
7.1.4
PHP
8.3.36
テーマ
wpq-media + DDEV
対象
カスタム投稿 / taxonomy / meta_query

更新履歴

  • 2026年9月19日 初回公開

この記事を活用する

あとで見返す・共有する

お気に入りに保存できます。役に立ったポイントは、いいねや共有で教えてください。

任意のご支援 役に立ったときだけ、活動を応援できます OFUSEはサイト・記事制作に使います。支援の有無で、読める内容や使える機能は変わりません。