Upgrade/Install: Avoid an extra database query in populate_network().

This moves the query for user ID of the new network's administrator closer to where the value is actually used.

Includes removing unnecessary `get_userdata()` call, as user ID is the only data needed here.

Follow-up to [12756], [35575], [43628].

Props nihar007, sakibmd, mukesh27, costdev, SergeyBiryukov.
Fixes .

git-svn-id: https://develop.svn.wordpress.org/trunk@55869 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Sergey Biryukov 2023-05-30 14:32:25 +00:00
parent 7b97d8c74e
commit 5dcb2e928c

@ -1044,18 +1044,6 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam
)
);
$site_user = get_userdata(
(int) $wpdb->get_var(
$wpdb->prepare(
"SELECT meta_value
FROM $wpdb->sitemeta
WHERE meta_key = %s AND site_id = %d",
'admin_user_id',
$network_id
)
)
);
/*
* When upgrading from single to multisite, assume the current site will
* become the main site of the network. When using populate_network()
@ -1079,8 +1067,19 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam
)
);
$current_site->blog_id = $wpdb->insert_id;
update_user_meta( $site_user->ID, 'source_domain', $domain );
update_user_meta( $site_user->ID, 'primary_blog', $current_site->blog_id );
$site_user_id = (int) $wpdb->get_var(
$wpdb->prepare(
"SELECT meta_value
FROM $wpdb->sitemeta
WHERE meta_key = %s AND site_id = %d",
'admin_user_id',
$network_id
)
);
update_user_meta( $site_user_id, 'source_domain', $domain );
update_user_meta( $site_user_id, 'primary_blog', $current_site->blog_id );
// Unable to use update_network_option() while populating the network.
$wpdb->insert(