WordPress按角色获取可分页的用户列表并显示最新文章
最近开发了一款多功能的新闻视频类Wordpress主题Yewan,客户的网站用户也比较多,要求设计一个按权限(管理员、编辑、作者、投稿者、订阅者)来获取用户列表的页面,同时获取用户的一篇最新文章,获取用户列表信息可以使用get_users函数。
用户列表可以添加到模板页面中,也可以添加到小工具中,Yewan主题的作者墙页面就是链接到编辑、作者和投稿者三个页面,同时也添加了一个推荐作者小工具,萨龙网络所有开发的主题都可以通过主题选项直接选择要推荐的用户,所以推荐作者小工具是相当不错。
下面就直接贴出整个模板页面代码,代码中都有说明,要修改也比较简单(分页代码来自Wordpress大学,不过其中的分页链接出现404)。
WP用户列表模板页面代码
- <?php
- get_header(); ?>
- <!-- 主体内容 -->
- <section class="container">
- <!--面包屑-->
- <section class="wrapper">
- <!-- 内容 -->
- <section class="content-wrap">
- <article class="entry user_list">
- <header class="post-head">
- <h2><?php the_title(); ?></h2>
- </header>
- <section class="user_content">
- <!-- 编辑 -->
- <ul>
- <?php
- $number = 2;
- $paged=( get_query_var( 'paged')) ? get_query_var( 'paged') : 1;
- $offset=( $paged - 1) * $number;
- $users=get_users( 'orderby=post_count&order=DESC&role=editor');
- $get_users=get_users( 'role=editor&offset='.$offset.'&number='.$number);
- $total_users=count($users);
- $total_query=count($get_users);
- $total_pages=intval($total_users / $number) + 1;
- foreach ($get_users as $user) { ?>
- <li>
- <a href="<?php echo get_author_posts_url($user->ID);?>" title="<?php echo get_the_author_meta('display_name',$user->ID);?>" class="author_name">
- <!--头像-->
- <?php echo get_avatar($user->ID,100);?>
- <!--名称-->
- <?php echo get_the_author_meta('display_name',$user->ID);?>
- </a>
- <!--用户的最新文章-->
- <?php $args=array(
- 'author'=> $user->ID,
- 'post_type' => array('post','video'),
- 'post_status' => 'publish',
- 'posts_per_page' => 1,
- 'caller_get_posts'=> 1
- );
- $my_query = null;
- $my_query = new WP_Query($args);
- if( $my_query->have_posts() ) {
- while ($my_query->have_posts()) : $my_query->the_post(); ?>
- <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>">
- <?php the_title(); ?>
- </a>
- <?php endwhile; } wp_reset_query(); ?>
- </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>
- </article>
- </section>
- <!-- 内容end -->
- <!-- 博客边栏 -->
- <?php get_sidebar(); ?>
- <!-- 博客边栏end -->
- </section>
- </section>
- <!-- 主体内容end -->
- <?php get_footer(); ?>
作者列表CSS样式
- .user_list ul li{
- display: block;
- width: 100%;
- border-bottom: 1px #eee solid;
- padding: 20px 100px 20px 60px;
- overflow: hidden;
- position: relative;
- }
- .user_list img{
- position: absolute;
- top: 50%;
- -webkit-transform: translateY(-50%);
- -moz-transform: translateY(-50%);
- -ms-transform: translateY(-50%);
- -o-transform: translateY(-50%);
- transform: translateY(-50%);
- }
- .user_list img{
- width: 48px;
- border-radius: 100%;
- left: 0;
- border: 1px #f4f4f4 solid;
- padding: 4px;
- background-color: #f8f8f8;
- }
- .user_list ul li a{
- display: block;
- }
- .user_list .author_name{
- font-size: 17px;
- }
- .user_list .new_post{
- font-size: 14px;
- color: #999;
- }
分页CSS样式
- .wp-pagenavi {
- margin: 30px 0;
- font-size: 13px;
- text-align: center;
- line-height: 24px;
- width: 100%;
- }
- .wp-pagenavi > span,
- .wp-pagenavi > a {
- margin: 4px 6px 4px 0;
- padding: 4px 12px;
- text-decoration: none;
- background-color: #fff;
- border: 1px #f4f4f4 solid;
- color: #666;
- display: inline-block;
- }
- .wp-pagenavi a:hover,
- .wp-pagenavi > .current{
- background-color: #d11f3c;
- color: #fff !important;
- }
[infobox]查看效果请访问Yewan主题演示站,野玩儿官网的用户列表是获取多个角色的。[/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-role-users-pagination.html
一个平平常常的人,热爱生活、旅行和摄影,骑行去过西藏,一直计划再去。14年从江西骑行来到大理,现栖居于洱海边,食人间烟火,过简单生活,做简约设计!萨龙网络已经开发了很多WordPress主题,LensNews主题要创建的页面较多,所以导致很多用户来咨询如何设置用户中心,在最新上线的…在更新Concise主题时集成了前端用户中心和商城插件,发现插件中为商城产品文章设置好了固定链接,所以把萨龙网络的作品集与商城的两种自定义类型的…WooCommerce插件默认为编辑产品页面提供了产品数据TABS,默认包括:常规、库存、配送、联锁产品、属性、高级等模块,功能强大而实用。…WordpressMU多站点已经使用很久,在本地测试和主机上安装的都是多站点,极大的方便网站搭建以及主题开发。当我们有多个站点,需要创建的新站…还是在开发导航类主题Slhao的时候遇到的问题,主题使用CodestarFramework专业版选项框架,文章的Metabox选项…产品属性可在后台「产品——产品选项——属性」中单独设置(也可在编辑产品时再次添加),有三种类型:文本、颜色和图片,在前台也是以这三种方式来显示。…WooCommerce在每个页面上加载三个核心CSS样式表,并在WordPress站点上安装时发布。可以通过从不需要它的页面和内容中删除样式和…相信使用Wordpress的朋友都对WP-PageNavi分页插件不陌生,很多博客对它也有很多介绍,之前也使用过代码来实现分页,但不够人性化,使…用法
absint(mixed$maybeint)
将值转换为非负整数。
参数
$maybeint
(mixed)(必需)您希望…很多个人博客都有一个小工具是来统计网站的一些信息,Deephoto主题企业版本首页就集成了网站统计,添加了工作天数、完成作品、新闻动态、摄影师、…为所有交易添加基于百分比的附加费
/**
*添加1%的附加费到你的购物车和结算页面
*更改百分比以将附加费设置为适合的…同样是在开发吃货主题Chihuo,导航菜单中的二级菜单需要显示省份的小地图,也就是分类菜单中显示自定义的字段,我们可通过以下代码来实现这个功能。…