途中からカスタムフィールドを追加すると、それまでに書いた記事には、カスタムフィールドのkeyが存在しないため、meta_queryを指定してしまうと記事が取得できなくなってしまいます。
'meta_query' => array( array( 'key' => 'display_on', 'value' => 1, 'compare' => '!=' ) )
この value値をnullなどにしてもそもそもkeyがないので、意味がありません。
過去記事が数件であれば、1件ずつ保存していけばいいのですが、何百記事となるとそんなこと出来ません!!
そういった場合には、検索条件に ‘compare’ => ‘NOT EXISTS’ を追加することでkeyがない記事についても表示することが出来ます。
'meta_query' => array( 'relation' => 'OR', array( 'key' => 'display_on', 'compare' => 'NOT EXISTS' ), array( 'key' => 'display_on', 'value' => 1, 'compare' => '!=' ) )
コメント