Function: count_users

count_users( string $strategy, integer | null $site_id )

Count number of users who have each of the user roles.

Assumes there are neither duplicated nor orphaned capabilities meta_values. Assumes role names are unique phrases. Same assumption made by WP_User_Query::prepare_query() Using $strategy = 'time' this is CPU-intensive and should handle around 10^7 users. Using $strategy = 'memory' this is memory-intensive and should handle around 10^5 users, but see WP Bug #12257.

Parameters

Name Type(s) Default Value Description
$strategy string 'time'

Optional. The computational strategy to use when counting the users. Accepts either 'time' or 'memory'. Default 'time'.

$site_id integer | null null

Optional. The site ID to count users for. Defaults to the current site.

Returns

array

Includes a grand total and an array of counts indexed by role strings.

WordPress Developer Newsletter

Stay on top of the latest WordPress API changes, developer tool updates, security alerts and more.