萨龙网络
登录
首页-WordPress文章-WordPress-正文

WordPress按角色获取可分页的用户列表并显示最新文章

萨龙龙萨龙龙
WordPress
9年前
0
0
1.21W
Wordpress按角色获取可分页的用户列表并显示最新文章最近开发了一款多功能的新闻视频类Wordpress主题Yewan,客户的网站用户也比较多,要求设计一个按权限(管理员、编辑、作者、投稿者、订阅者)来获取用户列表的页面,同时获取用户的一篇最新文章,获取用户列表信息可以使用get_users函数。 用户列表可以添加到模板页面中,也可以添加到小工具中,Yewan主题的作者墙页面就是链接到编辑、作者和投稿者三个页面,同时也添加了一个推荐作者小工具,萨龙网络所有开发的主题都可以通过主题选项直接选择要推荐的用户,所以推荐作者小工具是相当不错。 下面就直接贴出整个模板页面代码,代码中都有说明,要修改也比较简单(分页代码来自Wordpress大学,不过其中的分页链接出现404)。

WP用户列表模板页面代码

  1. <?php
  2. /*
  3. *Template Name: 用户列表
  4. */
  5. get_header(); ?>
  6. <!-- 主体内容 -->
  7. <section class="container">
  8.     <!--面包屑-->
  9.     <section class="wrapper">
  10.         <!-- 内容 -->
  11.         <section class="content-wrap">
  12.             <article class="entry user_list">
  13.                 <header class="post-head">
  14.                     <h2><?php the_title(); ?></h2>
  15.                 </header>
  16.                 <section class="user_content">
  17.                     <!-- 编辑 -->
  18.                     <ul>
  19.                         <?php
  20.                         $number = 2;//定义每页要显示的用户数量,添加一个 $number 的变量
  21.                         $paged=( get_query_var( 'paged')) ? get_query_var( 'paged') : 1;//查明当前页码数
  22.                         $offset=( $paged - 1) * $number;//计算应该在页面(偏移)被传递过来的用户数量,这将在第二页开始生效
  23.                         $users=get_users( 'orderby=post_count&order=DESC&role=editor');//获取网站的所有编辑,其它权限的用户将editor修改就可以(下行代码中也有editor);如果要获取所有用户,将role=editor删除(前后的&要注意删除);如果是多站点,可以添加:blog_id = 1,1为博客ID,就可以获取多站点中任意站点的用户
  24.                         $get_users=get_users( 'role=editor&offset='.$offset.'&number='.$number);//计算每页显示的信息,其中包括将要显示的用户数和偏移查询用户的总数
  25.                         $total_users=count($users);//使用 count() 这个PHP函数来获取用户总数
  26.                         $total_query=count($get_users);
  27.                         $total_pages=intval($total_users / $number) + 1;//计算应创建的总页数
  28.                         foreach ($get_users as $user) { ?>
  29.                         <li>
  30.                             <a href="<?php echo get_author_posts_url($user->ID);?>" title="<?php echo get_the_author_meta('display_name',$user->ID);?>" class="author_name">
  31.                                 <!--头像-->
  32.                                 <?php echo get_avatar($user->ID,100);?>
  33.                                 <!--名称-->
  34.                                 <?php echo get_the_author_meta('display_name',$user->ID);?>
  35.                             </a>
  36.                             <!--用户的最新文章-->
  37.                             <?php $args=array(
  38.                             'author'=> $user->ID,//用户ID
  39.                             'post_type' => array('post','video'),//可添加任意文章类型,获取最新的
  40.                             'post_status' => 'publish',//已发布的文章
  41.                             'posts_per_page' => 1,//显示的文章数量
  42.                             'caller_get_posts'=> 1 //让置顶文章变化普通文章
  43.                             );
  44.                             $my_query = null;
  45.                             $my_query = new WP_Query($args);
  46.                             if$my_query->have_posts() ) {
  47.                                 while ($my_query->have_posts()) : $my_query->the_post(); ?>
  48.                             <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>">
  49.                                 <?php the_title(); ?>
  50.                             </a>
  51.                             <?php endwhile; } wp_reset_query(); ?>
  52.                         </li>
  53.                         <?php } ?>
  54.                     </ul>
  55.                     <!--分页-->
  56.                     <?php if ($total_users$total_query) {
  57.                     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>';}?>
  58.                 </section>
  59.             </article>
  60.         </section>
  61.         <!-- 内容end -->
  62.         <!-- 博客边栏 -->
  63.         <?php get_sidebar(); ?>
  64.         <!-- 博客边栏end -->
  65.     </section>
  66. </section>
  67. <!-- 主体内容end -->
  68. <?php get_footer(); ?>

作者列表CSS样式

  1. /*********作者列表*********/
  2. .user_list ul li{
  3.     displayblock;
  4.     width: 100%;
  5.     border-bottom1px #eee solid;
  6.     padding20px 100px 20px 60px;
  7.     overflowhidden;
  8.     positionrelative;
  9. }
  10. .user_list img{
  11.     positionabsolute;
  12.     top: 50%;
  13.     -webkit-transform: translateY(-50%);
  14.     -moz-transform: translateY(-50%);
  15.     -ms-transform: translateY(-50%);
  16.     -o-transform: translateY(-50%);
  17.     transform: translateY(-50%);
  18. }
  19. /*头像*/
  20. .user_list img{
  21.     width48px;
  22.     border-radius: 100%;
  23.     left: 0;
  24.     border1px #f4f4f4 solid;
  25.     padding4px;
  26.     background-color#f8f8f8;
  27. }
  28. /*名称与文章*/
  29. .user_list ul li a{
  30.     displayblock;
  31. }
  32. .user_list .author_name{
  33.     font-size17px;
  34. }
  35. .user_list .new_post{
  36.     font-size14px;
  37.     color#999;
  38. }
  39. /*********作者列表end*********/

分页CSS样式

  1. /*****用户列表分页*****/
  2. .wp-pagenavi {
  3.     margin30px 0;
  4.     font-size13px;
  5.     text-aligncenter;
  6.     line-height24px;
  7.     width: 100%;
  8. }
  9. .wp-pagenavi > span,
  10. .wp-pagenavi > a {
  11.     margin4px 6px 4px 0;
  12.     padding4px 12px;
  13.     text-decorationnone;
  14.     background-color#fff;
  15.     border1px #f4f4f4 solid;
  16.     color#666;
  17.     displayinline-block;
  18. }
  19. .wp-pagenavi a:hover,
  20. .wp-pagenavi > .current{
  21.     background-color#d11f3c;
  22.     color#fff !important;
  23. }
  24. /*****用户列表分页end*****/
[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年从江西骑行来到大理,现栖居于洱海边,食人间烟火,过简单生活,做简约设计!
1342.12M346.36W3.52W
分享:
WOW.js简单实现页面滚动动画效果
WOW.js简单实现页面滚动动画效果上一篇
WordPress获取自定义文章类型分类下的文章并循环下一篇
WordPress获取自定义文章类型分类下的文章并循环
相关文章
总数:107

WordPress 插入页面函数 wp_insert_post

萨龙网络已经开发了很多WordPress主题,LensNews主题要创建的页面较多,所以导致很多用户来咨询如何设置用户中心,在最新上线的…
萨龙龙萨龙龙
WordPress
7年前
0
0
2.05W
0

修改Woocommerce商品固定链接其它自定义文章类型适用

在更新Concise主题时集成了前端用户中心和商城插件,发现插件中为商城产品文章设置好了固定链接,所以把萨龙网络的作品集与商城的两种自定义类型的…
萨龙龙萨龙龙
WooCommerce
10年前
0
0
1.32W
0

移除 WooCommerce 商城插件编辑产品中的产品数据相关 tabs

WooCommerce插件默认为编辑产品页面提供了产品数据TABS,默认包括:常规、库存、配送、联锁产品、属性、高级等模块,功能强大而实用。…
萨龙龙萨龙龙
WooCommerce
7年前
0
0
1.26W
0

WordPress MU多站点网络克隆新站点插件Multisite Cloner

WordpressMU多站点已经使用很久,在本地测试和主机上安装的都是多站点,极大的方便网站搭建以及主题开发。当我们有多个站点,需要创建的新站…
萨龙龙萨龙龙
WordPress
10年前
0
0
1.87W
0

WordPress 文章查询类 WP_Query 如何获取序列化数组中的文章

还是在开发导航类主题Slhao的时候遇到的问题,主题使用CodestarFramework专业版选项框架,文章的Metabox选项…
萨龙龙萨龙龙
WordPress
6年前
0
0
8.56K
0

WordPress 主题 Slearn Pro 产品插件之属性设置

产品属性可在后台「产品——产品选项——属性」中单独设置(也可在编辑产品时再次添加),有三种类型:文本、颜色和图片,在前台也是以这三种方式来显示。…
萨龙龙萨龙龙
WordPress
2年前
0
0
2.38W
0

WordPress 从不需要的页面禁用 WooCommerce 样式和脚本

WooCommerce在每个页面上加载三个核心CSS样式表,并在WordPress站点上安装时发布。可以通过从不需要它的页面和内容中删除样式和…
萨龙龙萨龙龙
WooCommerce
6年前
0
0
1.67W
0

WordPress强大好用的分页插件WP-PageNavi使用

相信使用Wordpress的朋友都对WP-PageNavi分页插件不陌生,很多博客对它也有很多介绍,之前也使用过代码来实现分页,但不够人性化,使…
萨龙龙萨龙龙
WordPress
9年前
0
0
2.39W
0

WordPress 功能函数——absint(将值转换为非负整数)

用法 absint(mixed$maybeint) 将值转换为非负整数。 参数 $maybeint (mixed)(必需)您希望…
萨龙龙萨龙龙
WordPress Functions
6年前
0
0
1.03W
0

WordPress网站统计相关信息使用大全

很多个人博客都有一个小工具是来统计网站的一些信息,Deephoto主题企业版本首页就集成了网站统计,添加了工作天数、完成作品、新闻动态、摄影师、…
萨龙龙萨龙龙
WordPress
9年前
0
0
1.15W
0

WooCommerce为购物车和结算添加附加费 &#8211; 使用费用API

为所有交易添加基于百分比的附加费 /** *添加1%的附加费到你的购物车和结算页面 *更改百分比以将附加费设置为适合的…
萨龙龙萨龙龙
WooCommerce
6年前
0
0
1.09W
0

WordPress向菜单中添加分类缩略图

同样是在开发吃货主题Chihuo,导航菜单中的二级菜单需要显示省份的小地图,也就是分类菜单中显示自定义的字段,我们可通过以下代码来实现这个功能。…
萨龙龙萨龙龙
WordPress
8年前
0
0
1.03W
0
评论表单游客 您好,欢迎参与讨论。
请输入昵称
请输入邮箱
请输入网址
0 / 100
评论列表
总数:0
萨龙网络
暂无评论,第一个评论下?