【wordpress】WP_Queryでカスタムタクソノミーを取得する

公式ドキュメントのWP_Queryがイマイチ分かりづらいので
カスタムタクソノミー取得方法についてメモしておく。



下記のような形がベースとなります。
arrayの左辺部分は固定です。
下記のXXXで囲まれた部分を自分の環境に合わせて修正しましょう。

[syntax type="php"]
$next_query = new wp_query( array(
'post_type' => 'XXXtechsXXX',
'tax_query' => array(
array(
'taxonomy' => 'XXXtax_techsXXX',
'field' => 'XXXXslugXXX',
'terms' => 'XXXhogeXXX'
)
)
));
[/syntax]

post_typeは通常の投稿なら不要ですが、カスタム投稿を取得したい場合は
カスタム投稿のスラッグを入れましょう。
tax_queryに実際のタクソノミー情報を入れます。
taxonomyってのはタクソノミーのslug。
fieldってのはslugとidが指定でき、slugで検索するかIDで検索するかが分かれます。
termsに実際のslugかIDを入れましょう。

僕はCustom Post Typeというプラグインでタクソノミーを追加していますが、
「分類名」に入るところがtaxonomyですね。
register_taxonomy関数の第一引数に渡す値となります。

んで、実際に入れるタグのslugをtermsに書けばいいということです。