本文へ移動

用語集

WP_Query パラメーターrelation

relation は、WP_Query の tax_query や meta_query の中で、複数の条件同士をどうつなぐかを指定する項目です。すべての条件を満たす必要があるのか、どれか1つを満たせばよいのかを決めます。

Huddly Huddly 投稿日: 2026年8月15日 更新日: 2026年8月29日 読了目安: 3分

まず結論

relation は、WP_Query の tax_querymeta_query で、複数の条件同士をどうつなぐかを指定する項目です。すべて満たすなら AND、どれか1つでよいなら OR を使います。

relation は、条件が複数ある時に意味を持ちます。カテゴリー条件が2つある、タグ条件とカテゴリー条件を組み合わせる、カスタムフィールド条件を複数書く、といった場面で使います。

初心者が迷いやすいのは、relationoperatorcompare の違いです。relation は条件同士のつなぎ方です。operatortax_query の1条件内で terms をどう扱うか、comparemeta_query の1条件内で値をどう比較するかを指定します。

relation は何を指定する項目か

relation は、複数の条件を AND または OR でつなぐための項目です。AND はすべての条件を満たす必要があり、OR はどれか1つを満たせば対象になります。

relation は、tax_query でも meta_query でも使われます。分類条件同士をつなぐ場合にも、カスタムフィールド条件同士をつなぐ場合にも、考え方は同じです。

ここで大事なのは、relation は複数条件の外側に置く項目だということです。1つの条件の中に入れても、条件同士のつなぎ方としては読みづらくなります。

まずは、条件が1つだけなら relation は不要、と考えると理解しやすくなります。条件が2つ以上になった時に、AND なのか OR なのかを決めます。

relation意味使う場面
ANDすべての条件を満たす投稿を取得するカテゴリーもタグも一致する投稿、価格条件とフラグ条件を両方満たす投稿
ORどれか1つの条件を満たす投稿を取得する複数カテゴリー条件のどれか、複数メタ条件のどれかに当てはまる投稿

relation、operator、compare の違い

relation と混同しやすいのが、operatorcompare です。どれも条件に関係しますが、使う場所が違います。

relation は複数条件同士をつなぐ項目です。operatortax_query の1条件内で terms をどう扱うかを決めます。comparemeta_query の1条件内でメタ値をどう比較するかを決めます。

たとえば、カテゴリー条件とタグ条件をつなぐなら relation です。1つのカテゴリー条件の中で複数タームをどう扱うかは operator です。

カスタムフィールドの価格が3000以上かどうかは compare の話です。メタ条件が2つ以上ある場合、それらをどうつなぐかが relation の話になります。

Builder での扱い

WP Query Builder では、relation は複数条件の結合方法として扱う想定です。初心者向けには、ANDOR だけを見せるより、「すべての条件を満たす」「どれかの条件を満たす」のように表示すると分かりやすくなります。

たとえば Builder では、カテゴリー条件とタグ条件を追加した後に、「条件のつなぎ方: すべて満たす / どれかを満たす」を選ばせ、内部で relation に変換します。

tax_querymeta_query の両方を扱う場合は、それぞれの中に別々の relation があり得ます。Builder では、分類条件の relation とカスタムフィールド条件の relation を混同しない表示が必要です。

使いどころ・避けどころと実践確認

複数の meta_query または tax_query の条件を、すべて満たすか一つでも満たすか決める時に使います。

一つの条件内の値比較や、ターム集合の INNOT IN を指定する項目としては使いません。

OR を増やすと想定外の投稿が広がり、入れ子の relation は読み違えや負荷の原因になるため、論理式を先に書きます。

文章で「AかつB」「AまたはB」と書いてから配列にすると、入れ子の位置を間違えにくくなります。

条件Aのみ、Bのみ、A+B、どちらもなしの投稿を作り、AND・ORで期待する投稿IDの集合を真理値表と照合します。

関連記事リンクのサムネイル

WordPressの仕様で確認するポイント

公式資料では、WP_Query の Taxonomy Parameters、Custom Field Parameters、WP_Tax_Query、WP_Meta_Query のリファレンスで relation の構造を確認できます。

relation は、tax_querymeta_query のどちらでも使われるため、どの配列の relation なのかを意識して読むことが大切です。

公式リンク

公式ドキュメント

relation は、複数条件同士をどうつなぐかを指定する項目です。すべて満たすなら AND、どれか1つでよいなら OR です。

迷った時は、条件を2つだけにして確認します。AND では結果が狭くなり、OR では結果が広くなることを確認してから、条件を増やすと安全です。

relation の最終チェック

  • relation は複数条件同士のつなぎ方だと理解している
  • AND はすべて満たす、OR はどれかを満たすと確認した
  • operatorcompare と役割を混同していない
  • relation の位置が条件配列の外側にあることを確認した
  • まずは2条件だけの最小構成で取得できるか確認した

公式リファレンス

仕様や原文の説明も確認したいときは、公式ドキュメントと整理ページをあわせて見ると理解しやすくなります。

この記事の検証情報

検証環境

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

更新履歴

  • 2026年8月29日 本文と補助情報を更新
  • 2026年8月15日 初回公開

この用語を活用する

あとで見返す・共有する

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

他の用語も続けて確認できます

似た用語や周辺知識をまとめて見たいときは、用語集トップから探すと迷いにくくなります。

用語集トップを見る