mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-06-28 14:20:15 +00:00
Users: Introduce the concept of a large site to single site installations.
Currently in WordPress multisite there is a concept of large networks. The function `wp_is_large_network` is used to determine if a network has a large number of sites or users. If a network is marked as large, then expensive queries to calculate user counts are not run on page load but deferred to scheduled events. However there are a number of places in a single site installation where this functionality would also be useful, as expensive calls to count users and roles can make screens in the admin extremely slow. In this change, the `get_user_count` function and related functionality around it is ported to be available in a single site context. This means that expensive calls to the `count_users` function are replaced with calls to `get_user_count`. This change also includes a new function called `wp_is_large_user_count` and a filter of the same name, to mark if a site is large. Props johnbillion, Spacedmonkey, Mista-Flo, lumpysimon, tharsheblows, obenland, miss_jwo, jrchamp, flixos90, macbookandrew, pento, desrosj, johnjamesjacoby, jb510, davidbaumwald, costdev. Fixes #38741. git-svn-id: https://develop.svn.wordpress.org/trunk@53011 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -80,13 +80,10 @@ function wp_version_check( $extra_stats = array(), $force_check = false ) {
|
||||
}
|
||||
|
||||
if ( is_multisite() ) {
|
||||
$user_count = get_user_count();
|
||||
$num_blogs = get_blog_count();
|
||||
$wp_install = network_site_url();
|
||||
$multisite_enabled = 1;
|
||||
} else {
|
||||
$user_count = count_users();
|
||||
$user_count = $user_count['total_users'];
|
||||
$multisite_enabled = 0;
|
||||
$num_blogs = 1;
|
||||
$wp_install = home_url( '/' );
|
||||
@@ -99,7 +96,7 @@ function wp_version_check( $extra_stats = array(), $force_check = false ) {
|
||||
'mysql' => $mysql_version,
|
||||
'local_package' => isset( $wp_local_package ) ? $wp_local_package : '',
|
||||
'blogs' => $num_blogs,
|
||||
'users' => $user_count,
|
||||
'users' => get_user_count(),
|
||||
'multisite_enabled' => $multisite_enabled,
|
||||
'initial_db_version' => get_site_option( 'initial_db_version' ),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user