mirror of
https://github.com/WordPress/WordPress.git
synced 2025-01-09 09:57:38 +01:00
1be34a234f
Per the documentation standards, the `@global` tag is meant to list PHP globals used within functions or methods. The code in question uses the variable in global namespace, but does not explicitly declare it. Props jayupadhyay01, dswebsme. Fixes #46602. Built from https://develop.svn.wordpress.org/trunk@45233 git-svn-id: http://core.svn.wordpress.org/trunk@45042 1a063a9b-81f0-0310-95a4-ce76da25c4cd
141 lines
5.1 KiB
PHP
141 lines
5.1 KiB
PHP
<?php
|
|
/**
|
|
* Upgrade WordPress Page.
|
|
*
|
|
* @package WordPress
|
|
* @subpackage Administration
|
|
*/
|
|
|
|
/**
|
|
* We are upgrading WordPress.
|
|
*
|
|
* @since 1.5.1
|
|
* @var bool
|
|
*/
|
|
define( 'WP_INSTALLING', true );
|
|
|
|
/** Load WordPress Bootstrap */
|
|
require( dirname( dirname( __FILE__ ) ) . '/wp-load.php' );
|
|
|
|
nocache_headers();
|
|
|
|
timer_start();
|
|
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
|
|
|
delete_site_transient( 'update_core' );
|
|
|
|
if ( isset( $_GET['step'] ) ) {
|
|
$step = $_GET['step'];
|
|
} else {
|
|
$step = 0;
|
|
}
|
|
|
|
// Do it. No output.
|
|
if ( 'upgrade_db' === $step ) {
|
|
wp_upgrade();
|
|
die( '0' );
|
|
}
|
|
|
|
/**
|
|
* @global string $wp_version
|
|
* @global string $required_php_version
|
|
* @global string $required_mysql_version
|
|
*/
|
|
global $wp_version, $required_php_version, $required_mysql_version;
|
|
|
|
$step = (int) $step;
|
|
|
|
$php_version = phpversion();
|
|
$mysql_version = $wpdb->db_version();
|
|
$php_compat = version_compare( $php_version, $required_php_version, '>=' );
|
|
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) {
|
|
$mysql_compat = true;
|
|
} else {
|
|
$mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' );
|
|
}
|
|
|
|
@header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) );
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
|
|
<head>
|
|
<meta name="viewport" content="width=device-width" />
|
|
<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php echo get_option( 'blog_charset' ); ?>" />
|
|
<meta name="robots" content="noindex,nofollow" />
|
|
<title><?php _e( 'WordPress › Update' ); ?></title>
|
|
<?php
|
|
wp_admin_css( 'install', true );
|
|
wp_admin_css( 'ie', true );
|
|
?>
|
|
</head>
|
|
<body class="wp-core-ui">
|
|
<p id="logo"><a href="<?php echo esc_url( __( 'https://wordpress.org/' ) ); ?>"><?php _e( 'WordPress' ); ?></a></p>
|
|
|
|
<?php if ( get_option( 'db_version' ) == $wp_db_version || ! is_blog_installed() ) : ?>
|
|
|
|
<h1><?php _e( 'No Update Required' ); ?></h1>
|
|
<p><?php _e( 'Your WordPress database is already up-to-date!' ); ?></p>
|
|
<p class="step"><a class="button button-large" href="<?php echo get_option( 'home' ); ?>/"><?php _e( 'Continue' ); ?></a></p>
|
|
|
|
<?php
|
|
elseif ( ! $php_compat || ! $mysql_compat ) :
|
|
$version_url = sprintf(
|
|
/* translators: %s: WordPress version */
|
|
esc_url( __( 'https://wordpress.org/support/wordpress-version/version-%s/' ) ),
|
|
sanitize_title( $wp_version )
|
|
);
|
|
|
|
if ( ! $mysql_compat && ! $php_compat ) {
|
|
/* translators: 1: URL to WordPress release notes, 2: WordPress version number, 3: Minimum required PHP version number, 4: Minimum required MySQL version number, 5: Current PHP version number, 6: Current MySQL version number */
|
|
$message = sprintf( __( 'You cannot update because <a href="%1$s">WordPress %2$s</a> requires PHP version %3$s or higher and MySQL version %4$s or higher. You are running PHP version %5$s and MySQL version %6$s.' ), $version_url, $wp_version, $required_php_version, $required_mysql_version, $php_version, $mysql_version );
|
|
} elseif ( ! $php_compat ) {
|
|
/* translators: 1: URL to WordPress release notes, 2: WordPress version number, 3: Minimum required PHP version number, 4: Current PHP version number */
|
|
$message = sprintf( __( 'You cannot update because <a href="%1$s">WordPress %2$s</a> requires PHP version %3$s or higher. You are running version %4$s.' ), $version_url, $wp_version, $required_php_version, $php_version );
|
|
} elseif ( ! $mysql_compat ) {
|
|
/* translators: 1: URL to WordPress release notes, 2: WordPress version number, 3: Minimum required MySQL version number, 4: Current MySQL version number */
|
|
$message = sprintf( __( 'You cannot update because <a href="%1$s">WordPress %2$s</a> requires MySQL version %3$s or higher. You are running version %4$s.' ), $version_url, $wp_version, $required_mysql_version, $mysql_version );
|
|
}
|
|
?>
|
|
<?php
|
|
else :
|
|
switch ( $step ) :
|
|
case 0:
|
|
$goback = wp_get_referer();
|
|
if ( $goback ) {
|
|
$goback = esc_url_raw( $goback );
|
|
$goback = urlencode( $goback );
|
|
}
|
|
?>
|
|
<h1><?php _e( 'Database Update Required' ); ?></h1>
|
|
<p><?php _e( 'WordPress has been updated! Before we send you on your way, we have to update your database to the newest version.' ); ?></p>
|
|
<p><?php _e( 'The database update process may take a little while, so please be patient.' ); ?></p>
|
|
<p class="step"><a class="button button-large button-primary" href="upgrade.php?step=1&backto=<?php echo $goback; ?>"><?php _e( 'Update WordPress Database' ); ?></a></p>
|
|
<?php
|
|
break;
|
|
case 1:
|
|
wp_upgrade();
|
|
|
|
$backto = ! empty( $_GET['backto'] ) ? wp_unslash( urldecode( $_GET['backto'] ) ) : __get_option( 'home' ) . '/';
|
|
$backto = esc_url( $backto );
|
|
$backto = wp_validate_redirect( $backto, __get_option( 'home' ) . '/' );
|
|
?>
|
|
<h1><?php _e( 'Update Complete' ); ?></h1>
|
|
<p><?php _e( 'Your WordPress database has been successfully updated!' ); ?></p>
|
|
<p class="step"><a class="button button-large" href="<?php echo $backto; ?>"><?php _e( 'Continue' ); ?></a></p>
|
|
|
|
<!--
|
|
<pre>
|
|
<?php printf( __( '%s queries' ), $wpdb->num_queries ); ?>
|
|
|
|
<?php printf( __( '%s seconds' ), timer_stop( 0 ) ); ?>
|
|
</pre>
|
|
-->
|
|
|
|
<?php
|
|
break;
|
|
endswitch;
|
|
endif;
|
|
?>
|
|
</body>
|
|
</html>
|