今天在做WordPress博客文章统计的时候,自己刚好要用到,于是在网上搜了搜,整理了一下几种文章统计的方式:
获取本周发布的文章数量
//WordPress获取本周发布的文章数量 function get_week_post_count(){ $date_query = array( array( 'after'=>'1 week ago' ) );$args = array( 'post_type' => 'post', 'post_status'=>'publish', 'date_query' => $date_query, 'no_found_rows' => true, 'suppress_filters' => true, 'fields'=>'ids', 'posts_per_page'=>-1 ); $query = new wmh_Query( $args ); return $query->post_count; }
使用方法:
将上面获取本周发布的文章数量代码添加到当前主题的 functions.php
<?php echo get_week_post_count()?>
获取今天发布的文章数量
//WordPress获取今天更新的文章数量 function get_posts_count_from_today($post_type ='post') { global $wpdb; $numposts = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(ID) ". "FROM {$wpdb->posts} ". "WHERE post_status='publish' ". "AND post_type= %s ". "AND DATE_FORMAT(post_date, '%Y-%m-%d') = %s", $post_type, date('Y-m-d', time()) ) ); return $numposts; }
使用方法
将上面获取今天发布的文章数量代码添加到当前主题的 functions.php ,然后在需要调用的地方使用下面的代码即可:
<?php echo get_today_post_count()?>
上面代码为获取默认为“post”这个文章类型,如果你要获取其他文章类型,比如 site,可以这样用:
<?php echo get_posts_count_from_today('site'); ?>
获取最近24小时发布的文章数量
//WordPress获取最近24小时发布的文章数量 function get_posts_count_from_last_24h($post_type ='post') { global $wpdb; $numposts = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(ID) ". "FROM {$wpdb->posts} ". "WHERE ". "post_status='publish' ". "AND post_type= %s ". "AND post_date> %s", $post_type, date('Y-m-d H:i:s', strtotime('-24 hours')) ) ); return $numposts; }
使用方法
将上面获取最近24小发布文的章数量代码添加到当前主题的 functions.php ,然后在需要调用的地方使用下面的代码即可:
<?php echo get_posts_count_from_last_24h(); ?>
上面代码为获取默认为“post”这个文章类型,如果你要获取其他文章类型,比如 site,可以这样用:
<?php echo get_posts_count_from_last_24h('site'); ?>