1
|
|
|
<?php |
2
|
|
|
/** |
3
|
|
|
* Upgrade WordPress Page. |
4
|
|
|
* |
5
|
|
|
* @package WordPress |
6
|
|
|
* @subpackage Administration |
7
|
|
|
*/ |
8
|
|
|
|
9
|
|
|
/** |
10
|
|
|
* We are upgrading WordPress. |
11
|
|
|
* |
12
|
|
|
* @since 1.5.1 |
13
|
|
|
* @var bool |
14
|
|
|
*/ |
15
|
|
|
define( 'WP_INSTALLING', true ); |
16
|
|
|
|
17
|
|
|
/** Load WordPress Bootstrap */ |
18
|
|
|
require( dirname( dirname( __FILE__ ) ) . '/wp-load.php' ); |
19
|
|
|
|
20
|
|
|
nocache_headers(); |
21
|
|
|
|
22
|
|
|
timer_start(); |
23
|
|
|
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); |
24
|
|
|
|
25
|
|
|
delete_site_transient('update_core'); |
26
|
|
|
|
27
|
|
|
if ( isset( $_GET['step'] ) ) |
28
|
|
|
$step = $_GET['step']; |
29
|
|
|
else |
30
|
|
|
$step = 0; |
31
|
|
|
|
32
|
|
|
// Do it. No output. |
33
|
|
|
if ( 'upgrade_db' === $step ) { |
34
|
|
|
wp_upgrade(); |
35
|
|
|
die( '0' ); |
36
|
|
|
} |
37
|
|
|
|
38
|
|
|
/** |
39
|
|
|
* @global string $wp_version |
40
|
|
|
* @global string $required_php_version |
41
|
|
|
* @global string $required_mysql_version |
42
|
|
|
* @global wpdb $wpdb |
43
|
|
|
*/ |
44
|
|
|
global $wp_version, $required_php_version, $required_mysql_version; |
45
|
|
|
|
46
|
|
|
$step = (int) $step; |
47
|
|
|
|
48
|
|
|
$php_version = phpversion(); |
49
|
|
|
$mysql_version = $wpdb->db_version(); |
50
|
|
|
$php_compat = version_compare( $php_version, $required_php_version, '>=' ); |
51
|
|
View Code Duplication |
if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) |
52
|
|
|
$mysql_compat = true; |
53
|
|
|
else |
54
|
|
|
$mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' ); |
55
|
|
|
|
56
|
|
|
@header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) ); |
|
|
|
|
57
|
|
|
?> |
58
|
|
|
<!DOCTYPE html> |
59
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>> |
60
|
|
|
<head> |
61
|
|
|
<meta name="viewport" content="width=device-width" /> |
62
|
|
|
<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php echo get_option( 'blog_charset' ); ?>" /> |
63
|
|
|
<meta name="robots" content="noindex,nofollow" /> |
64
|
|
|
<title><?php _e( 'WordPress › Update' ); ?></title> |
65
|
|
|
<?php |
66
|
|
|
wp_admin_css( 'install', true ); |
67
|
|
|
wp_admin_css( 'ie', true ); |
68
|
|
|
?> |
69
|
|
|
</head> |
70
|
|
|
<body class="wp-core-ui"> |
71
|
|
|
<p id="logo"><a href="<?php echo esc_url( __( 'https://wordpress.org/' ) ); ?>" tabindex="-1"><?php _e( 'WordPress' ); ?></a></p> |
72
|
|
|
|
73
|
|
|
<?php if ( get_option( 'db_version' ) == $wp_db_version || !is_blog_installed() ) : ?> |
74
|
|
|
|
75
|
|
|
<h1><?php _e( 'No Update Required' ); ?></h1> |
76
|
|
|
<p><?php _e( 'Your WordPress database is already up-to-date!' ); ?></p> |
77
|
|
|
<p class="step"><a class="button button-large" href="<?php echo get_option( 'home' ); ?>/"><?php _e( 'Continue' ); ?></a></p> |
78
|
|
|
|
79
|
|
|
<?php elseif ( !$php_compat || !$mysql_compat ) : |
80
|
|
|
if ( !$mysql_compat && !$php_compat ) |
81
|
|
|
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 ); |
82
|
|
|
elseif ( !$php_compat ) |
83
|
|
|
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 ); |
84
|
|
|
elseif ( !$mysql_compat ) |
85
|
|
|
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 ); |
86
|
|
|
?> |
87
|
|
|
<?php else : |
88
|
|
|
switch ( $step ) : |
89
|
|
|
case 0: |
90
|
|
|
$goback = wp_get_referer(); |
91
|
|
|
if ( $goback ) { |
|
|
|
|
92
|
|
|
$goback = esc_url_raw( $goback ); |
93
|
|
|
$goback = urlencode( $goback ); |
94
|
|
|
} |
95
|
|
|
?> |
96
|
|
|
<h1><?php _e( 'Database Update Required' ); ?></h1> |
97
|
|
|
<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> |
98
|
|
|
<p><?php _e( 'The database update process may take a little while, so please be patient.' ); ?></p> |
99
|
|
|
<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> |
100
|
|
|
<?php |
101
|
|
|
break; |
102
|
|
|
case 1: |
103
|
|
|
wp_upgrade(); |
104
|
|
|
|
105
|
|
|
$backto = !empty($_GET['backto']) ? wp_unslash( urldecode( $_GET['backto'] ) ) : __get_option( 'home' ) . '/'; |
106
|
|
|
$backto = esc_url( $backto ); |
|
|
|
|
107
|
|
|
$backto = wp_validate_redirect($backto, __get_option( 'home' ) . '/'); |
108
|
|
|
?> |
109
|
|
|
<h1><?php _e( 'Update Complete' ); ?></h1> |
110
|
|
|
<p><?php _e( 'Your WordPress database has been successfully updated!' ); ?></p> |
111
|
|
|
<p class="step"><a class="button button-large" href="<?php echo $backto; ?>"><?php _e( 'Continue' ); ?></a></p> |
112
|
|
|
|
113
|
|
|
<!-- |
114
|
|
|
<pre> |
115
|
|
|
<?php printf( __( '%s queries' ), $wpdb->num_queries ); ?> |
116
|
|
|
|
117
|
|
|
<?php printf( __( '%s seconds' ), timer_stop( 0 ) ); ?> |
118
|
|
|
</pre> |
119
|
|
|
--> |
120
|
|
|
|
121
|
|
|
<?php |
122
|
|
|
break; |
123
|
|
|
endswitch; |
124
|
|
|
endif; |
125
|
|
|
?> |
126
|
|
|
</body> |
127
|
|
|
</html> |
128
|
|
|
|
If you suppress an error, we recommend checking for the error condition explicitly: