显示自定义字段为空的帖子

时间:2016-06-12 作者:Advanced SEO

如何列出特定自定义字段为空的帖子?

我有一些带有自定义字段“author”的帖子,有些帖子的自定义字段是emty,所以我想找到这些帖子来删除自定义字段。

<?php 
$args=array(
\'post_type\' => \'post\', // Post type is post.
\'post_status\' => \'publish\', // Post is published.
\'meta_key\' => \'author\',
\'value\'   => \'\',
\'meta_compare\' => \'=\',

\'posts_per_page\' => 100, // Posts per page.
\'caller_get_posts\'=> 100 // Get posts per page
);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>

<?php // my code; ?>

<?php
endwhile;
}
?>

1 个回复
最合适的回答,由SO网友:Pieter Goosen 整理而成

你可能需要NOT EXISTS meta_compare 价值这将测试该特定键是否存在元值。

此外,正如我在评论中指出的,caller_get_posts 是长期不推荐的,如果你打开了去毛刺,你应该清楚地收到一个通知。正确的参数为ignore_sticky_posts 并接受0false)或1true

编辑我错过的一个问题是,value 应该是meta_value 不使用适当的meta_query

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在