WP_Query()のmeta_queryでAdvanced Custom Fieldsの「真 / 偽」の登録内容で絞りこむ方法
- 投稿日:2021/10/10 |最終更新:2021/10/14
- Wordpress
- WP_Query, meta_query, ACF
Advanced Custom Fields の「真 / 偽」タイプのカスタムフィールドでは、「真」の時に[true]が登録されているので、これを判断基準とします。
WordpressでWP_Query()を利用する時、ACFで作成した「真 / 偽」タイプのカスタムフィールドで入力した内容でmeta_queryを利用したい時の書き方は下記の通りです。
真の場合で絞りこむ
meta_queryのcompareを'='にすることでkeyに入れるカスタムフィールドとvalueが一致する場合を指定しています。
$args = array(
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'true_false', // カスタムフィールドのスラッグ
'value' => true,
'compare' => '=',
),
),
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post();
the_title();
}
}
wp_reset_postdata();
偽の場合で絞りこむ
meta_queryのcompareを'!='にすることでkeyに入れるカスタムフィールドとvalueが不一致する場合を指定しています。
$args = array(
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'true_false', // カスタムフィールドのスラッグ
'value' => true,
'compare' => '!=',
),
),
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post();
the_title();
}
}
wp_reset_postdata();
この記事が気に入ったらシェアしてください