wp/wp-admin/upgrade.php
author ymh <ymh.work@gmail.com>
Tue, 09 Jun 2015 03:35:32 +0200
changeset 5 5e2f62d02dcd
parent 0 d970ebf37754
child 7 cf61fcea0001
permissions -rw-r--r--
upgrade wordpress + plugins
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
<?php
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
 * Upgrade WordPress Page.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
 * @package WordPress
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
 * @subpackage Administration
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
 * We are upgrading WordPress.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
 * @since 1.5.1
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
 * @var bool
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
define( 'WP_INSTALLING', true );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
/** Load WordPress Bootstrap */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
require( dirname( dirname( __FILE__ ) ) . '/wp-load.php' );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
nocache_headers();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
timer_start();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
delete_site_transient('update_core');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
if ( isset( $_GET['step'] ) )
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
	$step = $_GET['step'];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
	$step = 0;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
// Do it. No output.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
if ( 'upgrade_db' === $step ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
	wp_upgrade();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
	die( '0' );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    38
global $wp_version, $required_php_version, $required_mysql_version;
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    39
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
$step = (int) $step;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
$php_version    = phpversion();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
$mysql_version  = $wpdb->db_version();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
$php_compat     = version_compare( $php_version, $required_php_version, '>=' );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) )
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
	$mysql_compat = true;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
	$mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
@header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
<!DOCTYPE html>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
<head>
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    55
	<meta name="viewport" content="width=device-width" />
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
	<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php echo get_option( 'blog_charset' ); ?>" />
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
	<title><?php _e( 'WordPress &rsaquo; Update' ); ?></title>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
	<?php
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
	wp_admin_css( 'install', true );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
	wp_admin_css( 'ie', true );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
	?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
</head>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
<body class="wp-core-ui">
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    64
<h1 id="logo"><a href="<?php echo esc_url( __( 'https://wordpress.org/' ) ); ?>" tabindex="-1"><?php _e( 'WordPress' ); ?></a></h1>
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
<?php if ( get_option( 'db_version' ) == $wp_db_version || !is_blog_installed() ) : ?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
<h2><?php _e( 'No Update Required' ); ?></h2>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
<p><?php _e( 'Your WordPress database is already up-to-date!' ); ?></p>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
<p class="step"><a class="button button-large" href="<?php echo get_option( 'home' ); ?>/"><?php _e( 'Continue' ); ?></a></p>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
<?php elseif ( !$php_compat || !$mysql_compat ) :
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
	if ( !$mysql_compat && !$php_compat )
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    74
		printf( __('You cannot update because <a href="https://codex.wordpress.org/Version_%1$s">WordPress %1$s</a> requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.'), $wp_version, $required_php_version, $required_mysql_version, $php_version, $mysql_version );
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
	elseif ( !$php_compat )
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    76
		printf( __('You cannot update because <a href="https://codex.wordpress.org/Version_%1$s">WordPress %1$s</a> requires PHP version %2$s or higher. You are running version %3$s.'), $wp_version, $required_php_version, $php_version );
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
	elseif ( !$mysql_compat )
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    78
		printf( __('You cannot update because <a href="https://codex.wordpress.org/Version_%1$s">WordPress %1$s</a> requires MySQL version %2$s or higher. You are running version %3$s.'), $wp_version, $required_mysql_version, $mysql_version );
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
<?php else :
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
switch ( $step ) :
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
	case 0:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
		$goback = wp_get_referer();
5
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    84
		if ( $goback ) {
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    85
			$goback = esc_url_raw( $goback );
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    86
			$goback = urlencode( $goback );
5e2f62d02dcd upgrade wordpress + plugins
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    87
		}
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
<h2><?php _e( 'Database Update Required' ); ?></h2>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
<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>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
<p><?php _e( 'The update process may take a little while, so please be patient.' ); ?></p>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
<p class="step"><a class="button button-large" href="upgrade.php?step=1&amp;backto=<?php echo $goback; ?>"><?php _e( 'Update WordPress Database' ); ?></a></p>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
<?php
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
		break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
	case 1:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
		wp_upgrade();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
			$backto = !empty($_GET['backto']) ? wp_unslash( urldecode( $_GET['backto'] ) ) : __get_option( 'home' ) . '/';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
			$backto = esc_url( $backto );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
			$backto = wp_validate_redirect($backto, __get_option( 'home' ) . '/');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
<h2><?php _e( 'Update Complete' ); ?></h2>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
	<p><?php _e( 'Your WordPress database has been successfully updated!' ); ?></p>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
	<p class="step"><a class="button button-large" href="<?php echo $backto; ?>"><?php _e( 'Continue' ); ?></a></p>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
<!--
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
<pre>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   108
<?php printf( __( '%s queries' ), $wpdb->num_queries ); ?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
<?php printf( __( '%s seconds' ), timer_stop( 0 ) ); ?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
</pre>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
-->
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
<?php
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   115
		break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
endswitch;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
endif;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   118
?>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
</body>
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
</html>