在WordPress按角色获取可分页的用户列表并显示最新文章这篇文章中我们已经介绍了获取单个角色的用户列表,如果想获取多个角色的用户列表呢,get_users函数中的role并不支持数组,这时我们就要把多个数组进行合并,使用array_merge()将两个或多个数组的单元合并起来,使用array_slice() 函数在数组中根据条件取出一段值,并返回。
多个角色的排列顺序将以array_merge()函数中单元的排列为顺序,比如:array_merge($editors,$authors,$contributors);,顺序则为编辑、作者和投稿者,每个角色中可以再进行排序。
完整的获取多个角色的代码,添加到模板页面即可:
- <section class="user_content">
- <?php $number = 8;
- <!-- 作者 -->
- <ul>
- <?php
- $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
- $offset = ($paged - 1) * $number;
- $editors = get_users(
- array(
- 'blog_id'=> 1,
- 'orderby' => 'post_count',
- 'order' => 'DESC',
- 'role' => 'editor'
- )
- );
- $authors = get_users(
- array(
- 'blog_id' => 1,
- 'orderby' => 'post_count',
- 'order' => 'DESC',
- 'role' => 'author'
- )
- );
- $contributors = get_users(
- array(
- 'blog_id' => 1,
- 'orderby' => 'post_count',
- 'order' => 'DESC',
- 'role' => 'contributor'
- )
- );
- $users = array_merge($editors,$authors,$contributors);
- $query = array_slice($users, $offset, $number);
- $total_users = count($users);
- $total_query = count($query);
- $total_pages = intval($total_users / $number) + 1;
- foreach ($query as $user) { ?>
- <?php global $wp_query; $display_name = $user->display_name; ?>
- <li>
- <?php echo $display_name; ?>
- </li>
- <?php } ?>
- </ul>
- <!--分页-->
- <?php if ($total_users > $total_query) {echo '<div class="wp-pagenavi">';$current_page = max(1, get_query_var('paged'));echo paginate_links(array('base' => get_pagenum_link(1) . '%_%','format' => '/page/%#%/','current' => $current_page,'total' => $total_pages));echo '</div>';}?>
- </section>
[infobox]获取多个角色的用户列表请前往野玩儿官网,同时野玩儿也添加一个自定义的角色(神人),通过get_users函数一样的获取神人用户列表,重新设计了用户列表的样式。演示站的用户列表还是获取单个角色。[/infobox][scbutton link="http://yewan.salongweb.com/users" target="blank" variation="red"]Yewan主题演示用户列表[/scbutton][scbutton link="http://www.yeoner.com/author" target="blank" variation="blue"]野玩儿官网用户列表[/scbutton]本文原创,作者:萨龙龙,其版权均为萨龙网络所有。
如需转载,请注明出处:https://salongweb.com/wordpress-more-role-users-pagination.html
一个平平常常的人,热爱生活、旅行和摄影,骑行去过西藏,一直计划再去。14年从江西骑行来到大理,现栖居于洱海边,食人间烟火,过简单生活,做简约设计!WordPress 网站的速度应该上每个站长必须关注的一个问题,对于刚使用 WordPress 的朋友,优化网站速度是比较困难的事情,找不到好的…萨龙网络开发的 MNews 主题中,集成了个人中心功能,需要获取文章、视频、下载、专题和商城的文章数量,这个是比较简单,使用wp_count_p…在 WordPress 主题的开发过程中,获取用户 ID 的频率是很高的,可在 WordPress 中查看用户信息,也可以通过代码直接获取。
…产品属性可在后台「产品——产品选项——属性」中单独设置(也可在编辑产品时再次添加),有三种类型:文本、颜色和图片,在前台也是以这三种方式来显示。…很多网站都会插入优酷或其它网站的在线视频到自己的网站中,默认情况下优酷视频的堆叠顺序并不受CSS样式z-index属性的影响,在视频页面有滚动、…WordPress 获取评论所有主题都是使用wp_list_comments()函数,获取每篇文章的评论是相当的方便实用,唯一的不足是不能通过自…在更新Concise主题时集成了前端用户中心和商城插件,发现插件中为商城产品文章设置好了固定链接,所以把萨龙网络的作品集与商城的两种自定义类型的…MNews 和 LensNews 主题都有前台投稿的功能,用户可以上传图片等文件,管理员是不希望用户上传任意的媒体文件,这时我们可以对用户上传的…前段时间已经发布Purity2.0主题更新的文章,主题已经集成了作品展示、商城,通过半个来月的时间把Buddypress+Bbpress社区论坛…新闻视频类Yewan主题的首页文章布局是不规则,文章的布局多样化,这是如何实现的?其实是很简单的,我们在循环中进行判断,每一篇文章都可以输出不同…前言在数字化商业生态中,联盟营销(Affiliate Marketing)已成为品牌方拓展销售渠道、降低获客成本的核心手段。一套完整的加…WooCommerce 在每个页面上加载三个核心CSS样式表,并在WordPress站点上安装时发布。可以通过从不需要它的页面和内容中删除样式和…