2017-07-28 22 views
1

カスタムタクソノミを使用してフィルタを作成しているループがあります。meta_queryと比較LIKEで空のアイテムが表示されない

値が入力されている場合にのみ動作します。ページが読み込まれると、エントリは表示されませんが、値でフィルタリングすると、そのタグを持つアイテムが表示されます。私は 'LIKE'は、値が空のときにすべてのエントリを表示できると考えました。

私はこれを、$成分を取り除き、空の ''に置き換えることでこれを試しました。

<?php 
    $args = array(
     'post_type' => 'product', 
     'posts_per_page' => -1, 
     'meta_query' => array(
      array(
       'key' => 'ingredients', 
       'value' => $ingredients, 
       'compare' => 'LIKE' 
       ) 
      ) 
     ); 

     $query = new WP_Query($args); 

     while($query->have_posts()) : $query->the_post();?> 

     <?php the_title(); ?><br /> 

     <?php endwhile; wp_reset_query(); ?> 

答えて

2

引数にfalseを渡すことを確認し、

$args = array(
     'post_type' => 'product', 
     'posts_per_page' => -1, 
     'meta_query' => array(
     'relation' => 'AND', 
      array(
       'key' => 'ingredients', 
       'value' => $ingredients, 
       'compare' => 'LIKE' 
       ), 
       array(
        'key' => 'ingredients', 
        'value' => false, 
        'type' => 'BOOLEAN' 
       ), 
      ) 
     ); 

はまた偽条件とクロスチェックするように> =を比較する追加。

関連する問題