我们如何计算用户草稿帖子

时间:2013-03-12 作者:Adi

我正在尝试使用当前的总帖子数我正在使用此查询

$args=array(
\'author\' => $userID,
\'post_type\' => \'post\',
\'post_status\' => $poststatus,
\'posts_per_page\' => 212
);
<?php echo count_user_posts($args); ?>
$poststatus 有2个选项draftpublish. 但当我运行这个查询时,有一个条件很好,那就是publish. 但是当我试着跑的时候draft 它没有显示正确的草稿桩数量。那么告诉我我在查询中哪里错了。

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

功能count_user_posts 只接受用户ID,因此从不考虑您的参数。下面是一个简单的函数,用于按状态获取计数

function count_user_posts_by_status($post_status = \'publish\',$user_id = 0){
    global $wpdb;
    $count = $wpdb->get_var(
        $wpdb->prepare( 
        "
        SELECT COUNT(ID) FROM $wpdb->posts 
        WHERE post_status = %s 
        AND post_author = %d",
        $post_status,
        $user_id
        )
    );
    return ($count) ? $count : 0;
}
用法:

<?php echo count_user_posts_by_status(\'draft\',$userID); ?>

结束

相关推荐

如何使用POST Count Zero获取每个分类的所有分类和所有术语

是否有一种简单的方法可以获取每个已注册的分类法,并且对于每个已注册的分类法,获取该分类法的所有术语,对于每个术语,获取post计数,而无需实际获取所有post数据?我想这绝对是可能的。我还假设它需要使用一些非常长的数据库查询$wpdb.