]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-admin/includes/upgrade.php
WordPress 4.4.1-scripts
[autoinstalls/wordpress.git] / wp-admin / includes / upgrade.php
index 86d8cf91dd3516ad95ba74bcb86a176fb1c28716..72d99b77b9a6c783f808e16e1ebf17666a0e6c32 100644 (file)
@@ -155,11 +155,18 @@ function wp_install_defaults( $user_id ) {
        if ( is_multisite() ) {
                $first_post = get_site_option( 'first_post' );
 
        if ( is_multisite() ) {
                $first_post = get_site_option( 'first_post' );
 
-               if ( empty($first_post) )
-                       $first_post = __( 'Welcome to <a href="SITE_URL">SITE_NAME</a>. This is your first post. Edit or delete it, then start writing!' );
+               if ( ! $first_post ) {
+                       /* translators: %s: site link */
+                       $first_post = __( 'Welcome to %s. This is your first post. Edit or delete it, then start blogging!' );
+               }
+
+               $first_post = sprintf( $first_post,
+                       sprintf( '<a href="%s">%s</a>', esc_url( network_home_url() ), get_current_site()->site_name )
+               );
 
 
-               $first_post = str_replace( "SITE_URL", esc_url( network_home_url() ), $first_post );
-               $first_post = str_replace( "SITE_NAME", get_current_site()->site_name, $first_post );
+               // Back-compat for pre-4.4
+               $first_post = str_replace( 'SITE_URL', esc_url( network_home_url() ), $first_post );
+               $first_post = str_replace( 'SITE_NAME', get_current_site()->site_name, $first_post );
        } else {
                $first_post = __( 'Welcome to WordPress. This is your first post. Edit or delete it, then start writing!' );
        }
        } else {
                $first_post = __( 'Welcome to WordPress. This is your first post. Edit or delete it, then start writing!' );
        }
@@ -222,6 +229,7 @@ As a new WordPress user, you should go to <a href=\"%s\">your dashboard</a> to d
                'post_date_gmt' => $now_gmt,
                'post_content' => $first_page,
                'post_excerpt' => '',
                'post_date_gmt' => $now_gmt,
                'post_content' => $first_page,
                'post_excerpt' => '',
+               'comment_status' => 'closed',
                'post_title' => __( 'Sample Page' ),
                /* translators: Default page slug */
                'post_name' => __( 'sample-page' ),
                'post_title' => __( 'Sample Page' ),
                /* translators: Default page slug */
                'post_name' => __( 'sample-page' ),
@@ -391,7 +399,7 @@ if ( !function_exists('wp_upgrade') ) :
  *
  * @global int  $wp_current_db_version
  * @global int  $wp_db_version
  *
  * @global int  $wp_current_db_version
  * @global int  $wp_db_version
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function wp_upgrade() {
        global $wp_current_db_version, $wp_db_version, $wpdb;
  */
 function wp_upgrade() {
        global $wp_current_db_version, $wp_db_version, $wpdb;
@@ -534,6 +542,12 @@ function upgrade_all() {
        if ( $wp_current_db_version < 33055 )
                upgrade_430();
 
        if ( $wp_current_db_version < 33055 )
                upgrade_430();
 
+       if ( $wp_current_db_version < 33056 )
+               upgrade_431();
+
+       if ( $wp_current_db_version < 35700 )
+               upgrade_440();
+
        maybe_disable_link_manager();
 
        maybe_disable_automattic_widgets();
        maybe_disable_link_manager();
 
        maybe_disable_automattic_widgets();
@@ -547,7 +561,7 @@ function upgrade_all() {
  *
  * @since 1.0.0
  *
  *
  * @since 1.0.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_100() {
        global $wpdb;
  */
 function upgrade_100() {
        global $wpdb;
@@ -555,7 +569,7 @@ function upgrade_100() {
        // Get the title and ID of every post, post_name to check if it already has a value
        $posts = $wpdb->get_results("SELECT ID, post_title, post_name FROM $wpdb->posts WHERE post_name = ''");
        if ($posts) {
        // Get the title and ID of every post, post_name to check if it already has a value
        $posts = $wpdb->get_results("SELECT ID, post_title, post_name FROM $wpdb->posts WHERE post_name = ''");
        if ($posts) {
-               foreach($posts as $post) {
+               foreach ($posts as $post) {
                        if ('' == $post->post_name) {
                                $newtitle = sanitize_title($post->post_title);
                                $wpdb->query( $wpdb->prepare("UPDATE $wpdb->posts SET post_name = %s WHERE ID = %d", $newtitle, $post->ID) );
                        if ('' == $post->post_name) {
                                $newtitle = sanitize_title($post->post_title);
                                $wpdb->query( $wpdb->prepare("UPDATE $wpdb->posts SET post_name = %s WHERE ID = %d", $newtitle, $post->ID) );
@@ -605,7 +619,7 @@ function upgrade_100() {
  *
  * @since 1.0.1
  *
  *
  * @since 1.0.1
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_101() {
        global $wpdb;
  */
 function upgrade_101() {
        global $wpdb;
@@ -625,7 +639,7 @@ function upgrade_101() {
  *
  * @since 1.2.0
  *
  *
  * @since 1.2.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_110() {
        global $wpdb;
  */
 function upgrade_110() {
        global $wpdb;
@@ -687,7 +701,7 @@ function upgrade_110() {
  *
  * @since 1.5.0
  *
  *
  * @since 1.5.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_130() {
        global $wpdb;
  */
 function upgrade_130() {
        global $wpdb;
@@ -695,7 +709,7 @@ function upgrade_130() {
        // Remove extraneous backslashes.
        $posts = $wpdb->get_results("SELECT ID, post_title, post_content, post_excerpt, guid, post_date, post_name, post_status, post_author FROM $wpdb->posts");
        if ($posts) {
        // Remove extraneous backslashes.
        $posts = $wpdb->get_results("SELECT ID, post_title, post_content, post_excerpt, guid, post_date, post_name, post_status, post_author FROM $wpdb->posts");
        if ($posts) {
-               foreach($posts as $post) {
+               foreach ($posts as $post) {
                        $post_content = addslashes(deslash($post->post_content));
                        $post_title = addslashes(deslash($post->post_title));
                        $post_excerpt = addslashes(deslash($post->post_excerpt));
                        $post_content = addslashes(deslash($post->post_content));
                        $post_title = addslashes(deslash($post->post_title));
                        $post_excerpt = addslashes(deslash($post->post_excerpt));
@@ -712,7 +726,7 @@ function upgrade_130() {
        // Remove extraneous backslashes.
        $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_content FROM $wpdb->comments");
        if ($comments) {
        // Remove extraneous backslashes.
        $comments = $wpdb->get_results("SELECT comment_ID, comment_author, comment_content FROM $wpdb->comments");
        if ($comments) {
-               foreach($comments as $comment) {
+               foreach ($comments as $comment) {
                        $comment_content = deslash($comment->comment_content);
                        $comment_author = deslash($comment->comment_author);
 
                        $comment_content = deslash($comment->comment_content);
                        $comment_author = deslash($comment->comment_author);
 
@@ -723,7 +737,7 @@ function upgrade_130() {
        // Remove extraneous backslashes.
        $links = $wpdb->get_results("SELECT link_id, link_name, link_description FROM $wpdb->links");
        if ($links) {
        // Remove extraneous backslashes.
        $links = $wpdb->get_results("SELECT link_id, link_name, link_description FROM $wpdb->links");
        if ($links) {
-               foreach($links as $link) {
+               foreach ($links as $link) {
                        $link_name = deslash($link->link_name);
                        $link_description = deslash($link->link_description);
 
                        $link_name = deslash($link->link_name);
                        $link_description = deslash($link->link_description);
 
@@ -773,7 +787,7 @@ function upgrade_130() {
  *
  * @since 2.0.0
  *
  *
  * @since 2.0.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  * @global int  $wp_current_db_version
  */
 function upgrade_160() {
  * @global int  $wp_current_db_version
  */
 function upgrade_160() {
@@ -859,7 +873,7 @@ function upgrade_160() {
  *
  * @since 2.1.0
  *
  *
  * @since 2.1.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  * @global int  $wp_current_db_version
  */
 function upgrade_210() {
  * @global int  $wp_current_db_version
  */
 function upgrade_210() {
@@ -906,7 +920,7 @@ function upgrade_210() {
  *
  * @since 2.3.0
  *
  *
  * @since 2.3.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  * @global int  $wp_current_db_version
  */
 function upgrade_230() {
  * @global int  $wp_current_db_version
  */
 function upgrade_230() {
@@ -1085,7 +1099,7 @@ function upgrade_230() {
  *
  * @since 2.3.0
  *
  *
  * @since 2.3.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_230_options_table() {
        global $wpdb;
  */
 function upgrade_230_options_table() {
        global $wpdb;
@@ -1101,7 +1115,7 @@ function upgrade_230_options_table() {
  *
  * @since 2.3.0
  *
  *
  * @since 2.3.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_230_old_tables() {
        global $wpdb;
  */
 function upgrade_230_old_tables() {
        global $wpdb;
@@ -1115,7 +1129,7 @@ function upgrade_230_old_tables() {
  *
  * @since 2.2.0
  *
  *
  * @since 2.2.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_old_slugs() {
        // Upgrade people who were using the Redirect Old Slugs plugin.
  */
 function upgrade_old_slugs() {
        // Upgrade people who were using the Redirect Old Slugs plugin.
@@ -1144,7 +1158,7 @@ function upgrade_250() {
  *
  * @since 2.5.2
  *
  *
  * @since 2.5.2
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_252() {
        global $wpdb;
  */
 function upgrade_252() {
        global $wpdb;
@@ -1171,7 +1185,7 @@ function upgrade_260() {
  *
  * @since 2.7.0
  *
  *
  * @since 2.7.0
  *
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  * @global int  $wp_current_db_version
  */
 function upgrade_270() {
  * @global int  $wp_current_db_version
  */
 function upgrade_270() {
@@ -1191,7 +1205,7 @@ function upgrade_270() {
  * @since 2.8.0
  *
  * @global int  $wp_current_db_version
  * @since 2.8.0
  *
  * @global int  $wp_current_db_version
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_280() {
        global $wp_current_db_version, $wpdb;
  */
 function upgrade_280() {
        global $wp_current_db_version, $wpdb;
@@ -1201,7 +1215,7 @@ function upgrade_280() {
        if ( is_multisite() ) {
                $start = 0;
                while( $rows = $wpdb->get_results( "SELECT option_name, option_value FROM $wpdb->options ORDER BY option_id LIMIT $start, 20" ) ) {
        if ( is_multisite() ) {
                $start = 0;
                while( $rows = $wpdb->get_results( "SELECT option_name, option_value FROM $wpdb->options ORDER BY option_id LIMIT $start, 20" ) ) {
-                       foreach( $rows as $row ) {
+                       foreach ( $rows as $row ) {
                                $value = $row->option_value;
                                if ( !@unserialize( $value ) )
                                        $value = stripslashes( $value );
                                $value = $row->option_value;
                                if ( !@unserialize( $value ) )
                                        $value = stripslashes( $value );
@@ -1240,7 +1254,7 @@ function upgrade_290() {
  * @since 3.0.0
  *
  * @global int  $wp_current_db_version
  * @since 3.0.0
  *
  * @global int  $wp_current_db_version
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function upgrade_300() {
        global $wp_current_db_version, $wpdb;
  */
 function upgrade_300() {
        global $wp_current_db_version, $wpdb;
@@ -1577,6 +1591,44 @@ function upgrade_430_fix_comments() {
        }
 }
 
        }
 }
 
+/**
+ * Executes changes made in WordPress 4.3.1.
+ *
+ * @since 4.3.1
+ */
+function upgrade_431() {
+       // Fix incorrect cron entries for term splitting
+       $cron_array = _get_cron_array();
+       if ( isset( $cron_array['wp_batch_split_terms'] ) ) {
+               unset( $cron_array['wp_batch_split_terms'] );
+               _set_cron_array( $cron_array );
+       }
+}
+
+/**
+ * Executes changes made in WordPress 4.4.0.
+ *
+ * @since 4.4.0
+ *
+ * @global int  $wp_current_db_version Current version.
+ * @global wpdb $wpdb                  WordPress database abstraction object.
+ */
+function upgrade_440() {
+       global $wp_current_db_version, $wpdb;
+
+       if ( $wp_current_db_version < 34030 ) {
+               $wpdb->query( "ALTER TABLE {$wpdb->options} MODIFY option_name VARCHAR(191)" );
+       }
+
+       // Remove the unused 'add_users' role.
+       $roles = wp_roles();
+       foreach ( $roles->role_objects as $role ) {
+               if ( $role->has_cap( 'add_users' ) ) {
+                       $role->remove_cap( 'add_users' );
+               }
+       }
+}
+
 /**
  * Executes network-level upgrade routines.
  *
 /**
  * Executes network-level upgrade routines.
  *
@@ -1621,7 +1673,7 @@ function upgrade_network() {
 
                $start = 0;
                while( $rows = $wpdb->get_results( "SELECT meta_key, meta_value FROM {$wpdb->sitemeta} ORDER BY meta_id LIMIT $start, 20" ) ) {
 
                $start = 0;
                while( $rows = $wpdb->get_results( "SELECT meta_key, meta_value FROM {$wpdb->sitemeta} ORDER BY meta_id LIMIT $start, 20" ) ) {
-                       foreach( $rows as $row ) {
+                       foreach ( $rows as $row ) {
                                $value = $row->meta_value;
                                if ( !@unserialize( $value ) )
                                        $value = stripslashes( $value );
                                $value = $row->meta_value;
                                if ( !@unserialize( $value ) )
                                        $value = stripslashes( $value );
@@ -1703,7 +1755,7 @@ function upgrade_network() {
                if ( wp_should_upgrade_global_tables() ) {
                        $upgrade = false;
                        $indexes = $wpdb->get_results( "SHOW INDEXES FROM $wpdb->signups" );
                if ( wp_should_upgrade_global_tables() ) {
                        $upgrade = false;
                        $indexes = $wpdb->get_results( "SHOW INDEXES FROM $wpdb->signups" );
-                       foreach( $indexes as $index ) {
+                       foreach ( $indexes as $index ) {
                                if ( 'domain_path' == $index->Key_name && 'domain' == $index->Column_name && 140 != $index->Sub_part ) {
                                        $upgrade = true;
                                        break;
                                if ( 'domain_path' == $index->Key_name && 'domain' == $index->Column_name && 140 != $index->Sub_part ) {
                                        $upgrade = true;
                                        break;
@@ -2007,7 +2059,7 @@ function dbDelta( $queries = '', $execute = true ) {
        $for_update = array();
 
        // Create a tablename index for an array ($cqueries) of queries
        $for_update = array();
 
        // Create a tablename index for an array ($cqueries) of queries
-       foreach($queries as $qry) {
+       foreach ($queries as $qry) {
                if ( preg_match( "|CREATE TABLE ([^ ]*)|", $qry, $matches ) ) {
                        $cqueries[ trim( $matches[1], '`' ) ] = $qry;
                        $for_update[$matches[1]] = 'Created table '.$matches[1];
                if ( preg_match( "|CREATE TABLE ([^ ]*)|", $qry, $matches ) ) {
                        $cqueries[ trim( $matches[1], '`' ) ] = $qry;
                        $for_update[$matches[1]] = 'Created table '.$matches[1];
@@ -2158,6 +2210,7 @@ function dbDelta( $queries = '', $execute = true ) {
                                $keyname = $tableindex->Key_name;
                                $index_ary[$keyname]['columns'][] = array('fieldname' => $tableindex->Column_name, 'subpart' => $tableindex->Sub_part);
                                $index_ary[$keyname]['unique'] = ($tableindex->Non_unique == 0)?true:false;
                                $keyname = $tableindex->Key_name;
                                $index_ary[$keyname]['columns'][] = array('fieldname' => $tableindex->Column_name, 'subpart' => $tableindex->Sub_part);
                                $index_ary[$keyname]['unique'] = ($tableindex->Non_unique == 0)?true:false;
+                               $index_ary[$keyname]['index_type'] = $tableindex->Index_type;
                        }
 
                        // For each actual index in the index array.
                        }
 
                        // For each actual index in the index array.
@@ -2170,6 +2223,9 @@ function dbDelta( $queries = '', $execute = true ) {
                                } elseif ( $index_data['unique'] ) {
                                        $index_string .= 'UNIQUE ';
                                }
                                } elseif ( $index_data['unique'] ) {
                                        $index_string .= 'UNIQUE ';
                                }
+                               if ( 'FULLTEXT' === strtoupper( $index_data['index_type'] ) ) {
+                                       $index_string .= 'FULLTEXT ';
+                               }
                                $index_string .= 'KEY ';
                                if ($index_name != 'PRIMARY') {
                                        $index_string .= $index_name;
                                $index_string .= 'KEY ';
                                if ($index_name != 'PRIMARY') {
                                        $index_string .= $index_name;
@@ -2196,7 +2252,7 @@ function dbDelta( $queries = '', $execute = true ) {
                                        "$index_string ($alt_index_columns)",
                                );
 
                                        "$index_string ($alt_index_columns)",
                                );
 
-                               foreach( $index_strings as $index_string ) {
+                               foreach ( $index_strings as $index_string ) {
                                        if ( ! ( ( $aindex = array_search( $index_string, $indices ) ) === false ) ) {
                                                unset( $indices[ $aindex ] );
                                                break;
                                        if ( ! ( ( $aindex = array_search( $index_string, $indices ) ) === false ) ) {
                                                unset( $indices[ $aindex ] );
                                                break;
@@ -2247,7 +2303,7 @@ function dbDelta( $queries = '', $execute = true ) {
 function make_db_current( $tables = 'all' ) {
        $alterations = dbDelta( $tables );
        echo "<ol>\n";
 function make_db_current( $tables = 'all' ) {
        $alterations = dbDelta( $tables );
        echo "<ol>\n";
-       foreach($alterations as $alteration) echo "<li>$alteration</li>\n";
+       foreach ($alterations as $alteration) echo "<li>$alteration</li>\n";
        echo "</ol>\n";
 }
 
        echo "</ol>\n";
 }
 
@@ -2531,7 +2587,7 @@ function maybe_disable_automattic_widgets() {
  * @since 3.5.0
  *
  * @global int  $wp_current_db_version
  * @since 3.5.0
  *
  * @global int  $wp_current_db_version
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function maybe_disable_link_manager() {
        global $wp_current_db_version, $wpdb;
  */
 function maybe_disable_link_manager() {
        global $wp_current_db_version, $wpdb;
@@ -2546,7 +2602,7 @@ function maybe_disable_link_manager() {
  * @since 2.9.0
  *
  * @global int  $wp_current_db_version
  * @since 2.9.0
  *
  * @global int  $wp_current_db_version
- * @global wpdb $wpdb
+ * @global wpdb $wpdb WordPress database abstraction object.
  */
 function pre_schema_upgrade() {
        global $wp_current_db_version, $wpdb;
  */
 function pre_schema_upgrade() {
        global $wp_current_db_version, $wpdb;
@@ -2591,6 +2647,15 @@ function pre_schema_upgrade() {
                $wpdb->query( "ALTER TABLE $wpdb->postmeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );
                $wpdb->query( "ALTER TABLE $wpdb->posts DROP INDEX post_name, ADD INDEX post_name(post_name(191))" );
        }
                $wpdb->query( "ALTER TABLE $wpdb->postmeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );
                $wpdb->query( "ALTER TABLE $wpdb->posts DROP INDEX post_name, ADD INDEX post_name(post_name(191))" );
        }
+
+       // Upgrade versions prior to 4.4.
+       if ( $wp_current_db_version < 34978 ) {
+               // If compatible termmeta table is found, use it, but enforce a proper index and update collation.
+               if ( $wpdb->get_var( "SHOW TABLES LIKE '{$wpdb->termmeta}'" ) && $wpdb->get_results( "SHOW INDEX FROM {$wpdb->termmeta} WHERE Column_name = 'meta_key'" ) ) {
+                       $wpdb->query( "ALTER TABLE $wpdb->termmeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );
+                       maybe_convert_table_to_utf8mb4( $wpdb->termmeta );
+               }
+       }
 }
 
 /**
 }
 
 /**