本文へ移動

PARAMETER REFERENCE

カテゴリー・タグ・Tax Query

shortcutとtax_queryを使い分け、termの一致条件を読みやすく組みます。

このページで確認できること

迷っている条件に近い項目から確認し、必要な値と注意点へ進んでください。

  • カテゴリーやタグ一つで素早く絞りたい
  • 複数taxonomyをANDまたはORで組みたい
  • 親termを選んだときに子termも含めるか決めたい

値・選択肢・前提

パラメーター名だけでなく、何を決める値か、どの選択肢が使えるかを同時に確認します。

パラメーター役割主な選択肢・注意
cat / category_name単一カテゴリーをID・slugで指定

catはID、category_nameはslug簡単な条件向けです。複雑なcategory条件はtax_queryへ寄せます。

category__and / category__in / category__not_in複数カテゴリーをすべて含む・どれか含む・除外

category IDの配列ANDとINは意味が違います。記事が全termを持つ必要があるなら__andです。

tag / tag_id単一タグをslug・IDで指定

tagはslug、tag_idはID入力形式を取り違えないようmodeと値をセットで確認します。

tag__and / tag__in / tag__not_intag ID配列で一致・除外

tag IDの配列__andは全tag、__inはいずれかのtagを持つ投稿です。

tag_slug__and / tag_slug__intag slug配列で一致

tag slugの配列環境間でIDが変わる運用ではslug指定が読みやすい場合があります。

tax_query.taxonomy対象taxonomy

category / post_tag / custom taxonomy slugfield=term_taxonomy_id以外では有効なtaxonomy名が必要です。

tax_query.field / termstermの指定形式と値

term_id / slug / name / term_taxonomy_idfieldとtermsの形式を揃えます。EXISTS/NOT EXISTSではtermsを使いません。

tax_query.operatorclause内の一致方法

IN / NOT IN / AND / EXISTS / NOT EXISTSINはどれか、ANDはすべて、EXISTS系はそのtaxonomyのterm有無を見ます。

tax_query.include_children子termを含める

true / false / default(true)階層taxonomyで効く指定です。親だけを厳密に見るならfalseを検討します。

tax_query.relation複数clauseの関係

AND / ORclauseが一つならrelationは不要です。relationはclause間、operatorは一つのclause内を決めます。

組み合わせる前に確認すること

実装で起きやすい衝突を、条件を増やす前に確認します。

shortcutと同じtaxonomyを二重指定しない

category_*とtax_query(category)、tag*とtax_query(post_tag)は書けますが、条件を追いにくくします。

operatorとrelationを混同しない

operatorは一つのtaxonomy条件、relationは複数の条件ブロック同士をどう結ぶかです。

IDかslugかを運用で決める

同じDB内で確実に指定するならID、環境間で内容を移すならslugが読みやすいなど、更新方法まで含めて選びます。

最小構成の実装例

そのまま貼るのではなく、対象post typeとtemplateの使い方に合わせて調整してください。

PHPTaxonomy
$args = [    'post_type' => 'post',    'tax_query' => [        'relation' => 'AND',        [ 'taxonomy' => 'category', 'field' => 'slug', 'terms' => [ 'news' ] ],        [ 'taxonomy' => 'post_tag', 'field' => 'slug', 'terms' => [ 'featured' ] ],    ],];

仕様の最終確認対象WordPress versionのcode referenceも確認してください。WordPress Developer Resources

ほかの分類を見る

条件を組み合わせるときは、隣り合う分類の値や前提もあわせて確認すると設定漏れを防げます。

次に確認すること

「Taxonomy」の値と注意点を確認できたら、ほかの分類との関係を見直し、実装例かBuilderで実際のクエリに落とし込んでみてください。

このページを活用する

あとで見返す・共有する

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

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