mirror of
https://github.com/WordPress/WordPress.git
synced 2024-11-10 21:00:59 +01:00
Users: Correct the logic for switch_to_blog()
in WP_User_Query::generate_cache_key()
.
If `$blog_id` equals `0`, it should be treated as the current site ID, and there is no need to switch to a different site. This commit prevents an unnecessary call to `switch_to_blog()` on single site to avoid a fatal error when using `'orderby' => 'post_count'` and the deprecated `'who' => 'authors'` parameter: `Uncaught Error: Call to undefined function switch_to_blog() in wp-includes/class-wp-user-query.php:1077` Follow-up to [55657]. Props dd32, austinginder, RavanH, mukesh27. Reviewed by azaozz, audrasjb. Merges [56381] to the 6.3 branch. Fixes #59011. Built from https://develop.svn.wordpress.org/branches/6.3@56427 git-svn-id: http://core.svn.wordpress.org/branches/6.3@55939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
544ca05b84
commit
82e625f72f
@ -1071,12 +1071,15 @@ class WP_User_Query {
|
||||
if ( isset( $args['blog_id'] ) ) {
|
||||
$blog_id = absint( $args['blog_id'] );
|
||||
}
|
||||
if ( ( $args['has_published_posts'] && $blog_id ) || in_array( 'post_count', $ordersby, true ) ) {
|
||||
$switch = get_current_blog_id() !== $blog_id;
|
||||
|
||||
if ( $args['has_published_posts'] || in_array( 'post_count', $ordersby, true ) ) {
|
||||
$switch = $blog_id && get_current_blog_id() !== $blog_id;
|
||||
if ( $switch ) {
|
||||
switch_to_blog( $blog_id );
|
||||
}
|
||||
|
||||
$last_changed .= wp_cache_get_last_changed( 'posts' );
|
||||
|
||||
if ( $switch ) {
|
||||
restore_current_blog();
|
||||
}
|
||||
|
@ -16,7 +16,7 @@
|
||||
*
|
||||
* @global string $wp_version
|
||||
*/
|
||||
$wp_version = '6.3.1-alpha-56426';
|
||||
$wp_version = '6.3.1-alpha-56427';
|
||||
|
||||
/**
|
||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||
|
Loading…
Reference in New Issue
Block a user