2016-04-15 7 views
0

私は特定のmeta_valueを持つ投稿のすべてのタイトルを表示する必要があるこのループを持っています。ステータス'。特定のmeta_key値を持つ投稿、またはmeta_keyをまったく持っていない投稿を表示します

私のポストは現在、「the_status」と呼ばれるmeta_keyを使用して、これらのmeta_key値のいずれかを持つことができます。

が finished_helping

not_helping助けて...またはポストもmeta_key「the_statusを持っていないかもしれませんが「まったく。ここで

は、私が持っているものです。

<?php 
$the_query = array(
    'posts_per_page' => -1, 
    'author'   => $current_user->ID, 
    'post_status'  => 'publish', 
    'meta_key'   => 'the_status', 
    'meta_value'  => array('helping') 
); 
$help_posts = new WP_Query($the_query); 
while($help_posts->have_posts()) : $help_posts->the_post(); 
?> 

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

<?php 
endwhile; 
?> 

これは明らかに私だけ「助けて」meta_valueを持っている投稿のタイトルを与えるが、それはまた、「meta_keyを持っていない記事のタイトルを表示する必要がありますthe_status 'はまったくありません。

読んでいただきありがとうございます。

答えて

1

'meta_query' => array(
    'relation' => 'OR', 
    array(
     'key' => 'the_status', 
     'compare' => 'NOT EXISTS', 
     'value' => '' //can be omitted in WP 3.9+ 
    ), 
    array(
     'key' => 'the_status', 
     'value' => array('helping') 
    ) 
+0

おかげで

'meta_key' => 'the_status', 'meta_value' => array('helping') 

を交換してください。それがうまくいって私の質問に答えます。しかし、私はそれ以来、いくつかのmeta_valuesがNULLであることを知っています(私はPHPMyAdminにいる間気づきました)。 NULL meta_valuesを含めるにはどのように変更しますか? – user3256143

+0

私はテストするために遊ぶことができるWPインスタレーションを持っていませんが、別の配列を追加しようとしています: 'array( 'key' => 'the_status'、 'value' => NULL )' – trex005

+0

(私はそれが持っている必要があることに同意するが)動作しませんでした。私は代わりの提案にオープンしています。私はあなたの元の答えを正しいとマークしました。ありがとう! – user3256143

関連する問題