WordPress获取不同用户、类型文章和自定义字段下的文章数量
萨龙网络开发的 MNews 主题中,集成了个人中心功能,需要获取文章、视频、下载、专题和商城的文章数量,这个是比较简单,使用wp_count_posts()
函数即可。如果要获取不同用户、不同自定义字段下的不同文章类型的文章数量怎么办,同样很好解决,使用get_posts()
函数。
一、代码
- /*不同用户,不同文章类型,不同字段下的文章数量*/
- function salong_author_post_field_count($post_type,$user_id,$field) {
- global $post;
- $post_args = get_posts( array(
- 'posts_per_page' => -1,
- 'post_type' => $post_type,
- 'post_status' => 'publish',
- 'author' => $user_id
- ) );
- $counter = 0;
- foreach ( $post_args as $post ){
- $views = absint( get_post_meta( $post->ID, $field, true ) );
- $counter += $views;
- }
- return $counter;
- }
二、调用
调用很方便,比如要调用 ID 为1的用户,视频(video)类型文章下的有浏览量(views)的文章数量:
echo salong_author_post_field_count('video','1','views');