当前位置:首页>WordPress建站>WordPress开发>WordPress主题制作:添加一个用户列表页面模板(含用户头像)

WordPress主题制作:添加一个用户列表页面模板(含用户头像)

WordPress 主题 CoreNext

如果你的WordPress站点是开放注册的,拥有众多作者和注册用户,你可能需要将他们罗列出来,下面倡萌就简单介绍下如何制作一个WordPress用户列表页面模板(含用户头像)。

1.在主题根目录新建一个名为 page-user-list.php 的文件,然后复制你主题的 page.php 的代码到 page-user-list.php ,并且在最上方添加:

<?php
/*
Template Name: User List
*/
?>

2.在 page-user-list.php 找到

<?php the_content(); ?>

在其下方添加下面的代码:

<?php
     $display_admins = false; //是否显示管理员,ture - 显示,false -不显示
     $order_by = 'post_count'; // 排序依据,可选 'nicename', 'email', 'url', 'registered', 'display_name', 或 'post_count'
     $order = 'DESC'; //排列方式,ASC - 升序,DESC - 降序
     $role = ''; // 用户角色,可选 'subscriber', 'contributor', 'editor', 'author' - 留空显示全部 'all'
     $avatar_size = 161; //头像大小
     $hide_empty = false; // 是否隐藏没有文章的用户,ture - 显示,false -不显示
		
     if(!empty($display_admins)) {
          $blogusers = get_users('orderby='.$order_by.'&role='.$role);
     } else {

     $admins = get_users('role=administrator');
     $exclude = array();
     
     foreach($admins as $ad) {
          $exclude[] = $ad->ID;
     }

     $exclude = implode(',', $exclude);
     $blogusers = get_users('exclude='.$exclude.'&orderby='.$order_by.'&order='.$order.'&role='.$role);
     }
	
     $authors = array();
     foreach ($blogusers as $bloguser) {
     $user = get_userdata($bloguser->ID);

     if(!empty($hide_empty)) {
          $numposts = count_user_posts($user->ID);
          if($numposts < 1) continue;
          }
          $authors[] = (array) $user;
     }
		
     echo '<ul id="grid-contributors">';
     foreach($authors as $author) {
          $display_name = $author['data']->display_name;
          $avatar = get_avatar($author['ID'], $avatar_size);
          $author_profile_url = get_author_posts_url($author['ID']);
			
          echo '<li class="single-item">';
          echo '<div class="author-gravatar"><a href="', $author_profile_url, '">', $avatar , '</a></div>';
          echo '<div class="author-name"><a href="', $author_profile_url, '" class="contributor-link">', $display_name, '</a></div>';
          echo '</li>';
          }
     echo '</ul>';
?>

请根据自己的实际需要,修改 2-7 行代码。

3.保存 page-user-list.php ,然后在后台 > 页面 > 新建页面,在“页面属性”的“模板”中选择“User List”模板,保存页面即可。

注:具体的前端样式就靠大家自己折腾CSS代码了。

参考资料:http://wp-snippet.com/snippets/author-list-with-avatar-thumbnail/

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
欢迎关注WordPress大学公众号 WPDAXUE
WordPress开发

如何获取WordPress当前用户信息

2013-6-12 7:36:32

WordPress开发

如何在插件菜单中使用WordPress默认的菜单图标

2013-7-4 10:21:00

28 条回复 A文章作者 M管理员
  1. 请教校长,有没有办法不显示某些用户信息,举例:当以“作者”的用户名登陆后台,用户列表中不显示“管理员”和“编辑”的账户信息?

  2. 如果能够分页就好了

  3. fly3457

    这个好!正巧能用上,顺便说一下,上下两个喜欢的心如果都点击了,页面会混乱,我用的是chrome浏览器。

    • 倡萌

      主题就是在 chrome 下开发的,而且收藏功能是ajax免刷新的,不存在你说的问题啊,也没有其他用户反馈

    • fly3457

      一定要上下两个心都点了,不是多说的“喜欢”,而是会计数的心,你上下都放了,点了上面下面不会及时刷新,再点击下面的心内容就乱了。

    • 倡萌

      还真是有这个问题,很奇葩。话说谁会这样无聊点来点去呢

    • fly3457

      不过刷新一下就恢复正常了,也不是什么大问题。

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索