wp/wp-admin/network/upgrade.php
changeset 7 cf61fcea0001
parent 5 5e2f62d02dcd
child 9 177826044cd9
--- a/wp/wp-admin/network/upgrade.php	Tue Jun 09 11:14:17 2015 +0000
+++ b/wp/wp-admin/network/upgrade.php	Mon Oct 14 17:39:30 2019 +0200
@@ -10,9 +10,6 @@
 /** Load WordPress Administration Bootstrap */
 require_once( dirname( __FILE__ ) . '/admin.php' );
 
-if ( ! is_multisite() )
-	wp_die( __( 'Multisite support is not enabled.' ) );
-
 require_once( ABSPATH . WPINC . '/http.php' );
 
 $title = __( 'Upgrade Network' );
@@ -29,17 +26,18 @@
 
 get_current_screen()->set_help_sidebar(
 	'<p><strong>' . __('For more information:') . '</strong></p>' .
-	'<p>' . __('<a href="https://codex.wordpress.org/Network_Admin_Updates_Screen" target="_blank">Documentation on Upgrade Network</a>') . '</p>' .
-	'<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+	'<p>' . __('<a href="https://codex.wordpress.org/Network_Admin_Updates_Screen">Documentation on Upgrade Network</a>') . '</p>' .
+	'<p>' . __('<a href="https://wordpress.org/support/">Support Forums</a>') . '</p>'
 );
 
 require_once( ABSPATH . 'wp-admin/admin-header.php' );
 
-if ( ! current_user_can( 'manage_network' ) )
-	wp_die( __( 'You do not have permission to access this page.' ), 403 );
+if ( ! current_user_can( 'upgrade_network' ) ) {
+	wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 );
+}
 
 echo '<div class="wrap">';
-echo '<h2>' . __( 'Upgrade Network' ) . '</h2>';
+echo '<h1>' . __( 'Upgrade Network' ) . '</h1>';
 
 $action = isset($_GET['action']) ? $_GET['action'] : 'show';
 
@@ -48,25 +46,42 @@
 		$n = ( isset($_GET['n']) ) ? intval($_GET['n']) : 0;
 
 		if ( $n < 5 ) {
+			/**
+			 * @global string $wp_db_version
+			 */
 			global $wp_db_version;
 			update_site_option( 'wpmu_upgrade_site', $wp_db_version );
 		}
 
-		$blogs = $wpdb->get_results( "SELECT blog_id FROM {$wpdb->blogs} WHERE site_id = '{$wpdb->siteid}' AND spam = '0' AND deleted = '0' AND archived = '0' ORDER BY registered DESC LIMIT {$n}, 5", ARRAY_A );
-		if ( empty( $blogs ) ) {
+		$site_ids = get_sites( array(
+			'spam'       => 0,
+			'deleted'    => 0,
+			'archived'   => 0,
+			'network_id' => get_current_network_id(),
+			'number'     => 5,
+			'offset'     => $n,
+			'fields'     => 'ids',
+			'order'      => 'DESC',
+			'orderby'    => 'id',
+		) );
+		if ( empty( $site_ids ) ) {
 			echo '<p>' . __( 'All done!' ) . '</p>';
 			break;
 		}
 		echo "<ul>";
-		foreach ( (array) $blogs as $details ) {
-			switch_to_blog( $details['blog_id'] );
+		foreach ( (array) $site_ids as $site_id ) {
+			switch_to_blog( $site_id );
 			$siteurl = site_url();
 			$upgrade_url = admin_url( 'upgrade.php?step=upgrade_db' );
 			restore_current_blog();
 
 			echo "<li>$siteurl</li>";
 
-			$response = wp_remote_get( $upgrade_url, array( 'timeout' => 120, 'httpversion' => '1.1' ) );
+			$response = wp_remote_get( $upgrade_url, array(
+				'timeout'     => 120,
+				'httpversion' => '1.1',
+				'sslverify'   => false,
+			) );
 			if ( is_wp_error( $response ) ) {
 				wp_die( sprintf(
 					/* translators: 1: site url, 2: server error message */
@@ -79,7 +94,7 @@
 			/**
 			 * Fires after the Multisite DB upgrade for each site is complete.
 			 *
-			 * @since MU
+			 * @since MU (3.0.0)
 			 *
 			 * @param array|WP_Error $response The upgrade response array or WP_Error on failure.
 			 */
@@ -87,11 +102,11 @@
 			/**
 			 * Fires after each site has been upgraded.
 			 *
-			 * @since MU
+			 * @since MU (3.0.0)
 			 *
-			 * @param int $blog_id The id of the blog.
+			 * @param int $site_id The Site ID.
 			 */
-			do_action( 'wpmu_upgrade_site', $details[ 'blog_id' ] );
+			do_action( 'wpmu_upgrade_site', $site_id );
 		}
 		echo "</ul>";
 		?><p><?php _e( 'If your browser doesn&#8217;t start loading the next page automatically, click this link:' ); ?> <a class="button" href="upgrade.php?action=upgrade&amp;n=<?php echo ($n + 5) ?>"><?php _e("Next Sites"); ?></a></p>
@@ -108,17 +123,17 @@
 	default:
 		if ( get_site_option( 'wpmu_upgrade_site' ) != $GLOBALS['wp_db_version'] ) :
 		?>
-		<h3><?php _e( 'Database Upgrade Required' ); ?></h3>
+		<h2><?php _e( 'Database Update Required' ); ?></h2>
 		<p><?php _e( 'WordPress has been updated! Before we send you on your way, we need to individually upgrade the sites in your network.' ); ?></p>
 		<?php endif; ?>
 
-		<p><?php _e( 'The database upgrade process may take a little while, so please be patient.' ); ?></p>
-		<p><a class="button" href="upgrade.php?action=upgrade"><?php _e( 'Upgrade Network' ); ?></a></p>
+		<p><?php _e( 'The database update process may take a little while, so please be patient.' ); ?></p>
+		<p><a class="button button-primary" href="upgrade.php?action=upgrade"><?php _e( 'Upgrade Network' ); ?></a></p>
 		<?php
 		/**
 		 * Fires before the footer on the network upgrade screen.
 		 *
-		 * @since MU
+		 * @since MU (3.0.0)
 		 */
 		do_action( 'wpmu_upgrade_page' );
 	break;