最近有个朋友的主题需要显示注册用户数量,因为一般主题都不需要这些,所以我也没折腾过,也就不知道如何实现。

网上一搜,真没有直接的 WordPress 函数方法,都是直接用 SQL 语句查询实现的,代码如下

<?php $users = $wpdb->get_var("SELECT COUNT(ID) FROM $wpdb->users");

echo '本站有', $users, '位注册用户'; ?>

但是直接用 SQL 不爽啊,总觉得赤裸裸地……而且看这 SQL 获取的是所有用户。去 WordPress codex 转了一下,没发现直接的函数实现方法。

不过就在放弃直接函数方式时我注意到一个 WordPress 内置函数:wp_list_authors()

这不是列出所有作者的函数么?(wp_list_authors() 详情传送门 >>>>)

WP 的 authors 其实也是注册用户 (users),不过等级高点,归类为 post_author,所以可以用这个函数 YY 一下得到作者数量。

然后就有了下面用 wp_list_authors() 实现 「显示注册用户数量」 的另类方法

<?php $users=wp_list_authors('echo=0&exclude_admin=0&hide_empty=0&optioncount=1&style=0');

$users=split(',',$users);

echo '本站有', count($users), '位注册用户'; ?>

折腾玩 (完) 。