*
* @param int $user_id User ID.
*/
-function wp_install_defaults($user_id) {
- global $wpdb, $wp_rewrite, $current_site, $table_prefix;
+function wp_install_defaults( $user_id ) {
+ global $wpdb, $wp_rewrite, $table_prefix;
// Default category
$cat_name = __('Uncategorized');
$first_post = get_site_option( 'first_post' );
if ( empty($first_post) )
- $first_post = stripslashes( __( 'Welcome to <a href="SITE_URL">SITE_NAME</a>. This is your first post. Edit or delete it, then start blogging!' ) );
+ $first_post = __( 'Welcome to <a href="SITE_URL">SITE_NAME</a>. This is your first post. Edit or delete it, then start blogging!' );
$first_post = str_replace( "SITE_URL", esc_url( network_home_url() ), $first_post );
- $first_post = str_replace( "SITE_NAME", $current_site->site_name, $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 blogging!');
}
update_option( 'widget_archives', array ( 2 => array ( 'title' => '', 'count' => 0, 'dropdown' => 0 ), '_multiwidget' => 1 ) );
update_option( 'widget_categories', array ( 2 => array ( 'title' => '', 'count' => 0, 'hierarchical' => 0, 'dropdown' => 0 ), '_multiwidget' => 1 ) );
update_option( 'widget_meta', array ( 2 => array ( 'title' => '' ), '_multiwidget' => 1 ) );
- update_option( 'sidebars_widgets', array ( 'wp_inactive_widgets' => array ( ), 'sidebar-1' => array ( 0 => 'search-2', 1 => 'recent-posts-2', 2 => 'recent-comments-2', 3 => 'archives-2', 4 => 'categories-2', 5 => 'meta-2', ), 'sidebar-2' => array ( ), 'sidebar-3' => array ( ), 'array_version' => 3 ) );
+ update_option( 'sidebars_widgets', array ( 'wp_inactive_widgets' => array (), 'sidebar-1' => array ( 0 => 'search-2', 1 => 'recent-posts-2', 2 => 'recent-comments-2', 3 => 'archives-2', 4 => 'categories-2', 5 => 'meta-2', ), 'sidebar-2' => array (), 'sidebar-3' => array (), 'array_version' => 3 ) );
if ( ! is_multisite() )
update_user_meta( $user_id, 'show_welcome_panel', 1 );
if ( $wp_current_db_version < 22422 )
upgrade_350();
+ if ( $wp_current_db_version < 25824 )
+ upgrade_370();
+
+ if ( $wp_current_db_version < 26148 )
+ upgrade_372();
+
+ if ( $wp_current_db_version < 26691 )
+ upgrade_380();
+
maybe_disable_link_manager();
maybe_disable_automattic_widgets();
foreach ($categories as $category) {
if ('' == $category->category_nicename) {
$newtitle = sanitize_title($category->cat_name);
- $wpdb>update( $wpdb->categories, array('category_nicename' => $newtitle), array('cat_ID' => $category->cat_ID) );
+ $wpdb->update( $wpdb->categories, array('category_nicename' => $newtitle), array('cat_ID' => $category->cat_ID) );
}
}
$users = $wpdb->get_results("SELECT * FROM $wpdb->users");
foreach ( $users as $user ) :
if ( !empty( $user->user_firstname ) )
- update_user_meta( $user->ID, 'first_name', $wpdb->escape($user->user_firstname) );
+ update_user_meta( $user->ID, 'first_name', wp_slash($user->user_firstname) );
if ( !empty( $user->user_lastname ) )
- update_user_meta( $user->ID, 'last_name', $wpdb->escape($user->user_lastname) );
+ update_user_meta( $user->ID, 'last_name', wp_slash($user->user_lastname) );
if ( !empty( $user->user_nickname ) )
- update_user_meta( $user->ID, 'nickname', $wpdb->escape($user->user_nickname) );
+ update_user_meta( $user->ID, 'nickname', wp_slash($user->user_nickname) );
if ( !empty( $user->user_level ) )
update_user_meta( $user->ID, $wpdb->prefix . 'user_level', $user->user_level );
if ( !empty( $user->user_icq ) )
- update_user_meta( $user->ID, 'icq', $wpdb->escape($user->user_icq) );
+ update_user_meta( $user->ID, 'icq', wp_slash($user->user_icq) );
if ( !empty( $user->user_aim ) )
- update_user_meta( $user->ID, 'aim', $wpdb->escape($user->user_aim) );
+ update_user_meta( $user->ID, 'aim', wp_slash($user->user_aim) );
if ( !empty( $user->user_msn ) )
- update_user_meta( $user->ID, 'msn', $wpdb->escape($user->user_msn) );
+ update_user_meta( $user->ID, 'msn', wp_slash($user->user_msn) );
if ( !empty( $user->user_yim ) )
- update_user_meta( $user->ID, 'yim', $wpdb->escape($user->user_icq) );
+ update_user_meta( $user->ID, 'yim', wp_slash($user->user_icq) );
if ( !empty( $user->user_description ) )
- update_user_meta( $user->ID, 'description', $wpdb->escape($user->user_description) );
+ update_user_meta( $user->ID, 'description', wp_slash($user->user_description) );
if ( isset( $user->user_idmode ) ):
$idmode = $user->user_idmode;
foreach ( $link_cats as $category) {
$cat_id = (int) $category->cat_id;
$term_id = 0;
- $name = $wpdb->escape($category->cat_name);
+ $name = wp_slash($category->cat_name);
$slug = sanitize_title($name);
$term_group = 0;
wp_delete_term( $term->term_id, 'post_format' );
}
+/**
+ * Execute changes made in WordPress 3.7.
+ *
+ * @since 3.7.0
+ */
+function upgrade_370() {
+ global $wp_current_db_version;
+ if ( $wp_current_db_version < 25824 )
+ wp_clear_scheduled_hook( 'wp_auto_updates_maybe_update' );
+}
+
+/**
+ * Execute changes made in WordPress 3.7.2.
+ *
+ * @since 3.7.2
+ * @since 3.8.0
+ */
+function upgrade_372() {
+ global $wp_current_db_version;
+ if ( $wp_current_db_version < 26148 )
+ wp_clear_scheduled_hook( 'wp_maybe_auto_update' );
+}
+
+/**
+ * Execute changes made in WordPress 3.8.0.
+ *
+ * @since 3.8.0
+ */
+function upgrade_380() {
+ global $wp_current_db_version;
+ if ( $wp_current_db_version < 26691 ) {
+ deactivate_plugins( array( 'mp6/mp6.php' ), true );
+ }
+}
/**
* Execute network level changes
*
*/
function upgrade_network() {
global $wp_current_db_version, $wpdb;
+
+ // Always
+ if ( is_main_network() ) {
+ // Deletes all expired transients.
+ // The multi-table delete syntax is used to delete the transient record from table a,
+ // and the corresponding transient_timeout record from table b.
+ $time = time();
+ $wpdb->query("DELETE a, b FROM $wpdb->sitemeta a, $wpdb->sitemeta b WHERE
+ a.meta_key LIKE '\_site\_transient\_%' AND
+ a.meta_key NOT LIKE '\_site\_transient\_timeout\_%' AND
+ b.meta_key = CONCAT( '_site_transient_timeout_', SUBSTRING( a.meta_key, 17 ) )
+ AND b.meta_value < $time");
+ }
+
// 2.8
if ( $wp_current_db_version < 11549 ) {
$wpmu_sitewide_plugins = get_site_option( 'wpmu_sitewide_plugins' );
// 3.5
if ( $wp_current_db_version < 21823 )
update_site_option( 'ms_files_rewriting', '1' );
+
+ // 3.5.2
+ if ( $wp_current_db_version < 24448 ) {
+ $illegal_names = get_site_option( 'illegal_names' );
+ if ( is_array( $illegal_names ) && count( $illegal_names ) === 1 ) {
+ $illegal_name = reset( $illegal_names );
+ $illegal_names = explode( ' ', $illegal_name );
+ update_site_option( 'illegal_names', $illegal_names );
+ }
+ }
}
// The functions we use to actually do stuff
if ( 'siteurl' == $setting || 'home' == $setting || 'category_base' == $setting || 'tag_base' == $setting )
$option = untrailingslashit( $option );
- @ $kellogs = unserialize( $option );
- if ( $kellogs !== false )
- return $kellogs;
- else
- return $option;
+ return maybe_unserialize( $option );
}
/**
$global_tables = $wpdb->tables( 'global' );
foreach ( $cqueries as $table => $qry ) {
// Upgrade global tables only for the main site. Don't upgrade at all if DO_NOT_UPGRADE_GLOBAL_TABLES is defined.
- if ( in_array( $table, $global_tables ) && ( !is_main_site() || defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) )
+ if ( in_array( $table, $global_tables ) && ( !is_main_site() || defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) ) {
+ unset( $cqueries[ $table ], $for_update[ $table ] );
continue;
+ }
// Fetch the table column structure from the database
- $wpdb->suppress_errors();
+ $suppress = $wpdb->suppress_errors();
$tablefields = $wpdb->get_results("DESCRIBE {$table};");
- $wpdb->suppress_errors( false );
+ $wpdb->suppress_errors( $suppress );
if ( ! $tablefields )
continue;
// Get the default value from the array
//echo "{$cfields[strtolower($tablefield->Field)]}<br>";
- if (preg_match("| DEFAULT '(.*)'|i", $cfields[strtolower($tablefield->Field)], $matches)) {
+ if (preg_match("| DEFAULT '(.*?)'|i", $cfields[strtolower($tablefield->Field)], $matches)) {
$default_value = $matches[1];
if ($tablefield->Default != $default_value) {
// Add a query to change the column's default value
foreach ( (array) $indices as $index ) {
// Push a query line into $cqueries that adds the index to that table
$cqueries[] = "ALTER TABLE {$table} ADD $index";
- $for_update[$table.'.'.$fieldname] = 'Added index '.$table.' '.$index;
+ $for_update[] = 'Added index ' . $table . ' ' . $index;
}
// Remove the original table creation query from processing
* @since 2.9.0
*/
function pre_schema_upgrade() {
- global $wp_current_db_version, $wp_db_version, $wpdb;
+ global $wp_current_db_version, $wpdb;
// Upgrade versions prior to 2.9
if ( $wp_current_db_version < 11557 ) {
$wpdb->query("ALTER TABLE $wpdb->options DROP INDEX option_name");
}
+ // Multisite schema upgrades.
+ if ( $wp_current_db_version < 25448 && is_multisite() && ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) && is_main_network() ) {
+
+ // Upgrade verions prior to 3.7
+ if ( $wp_current_db_version < 25179 ) {
+ // New primary key for signups.
+ $wpdb->query( "ALTER TABLE $wpdb->signups ADD signup_id BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST" );
+ $wpdb->query( "ALTER TABLE $wpdb->signups DROP INDEX domain" );
+ }
+
+ if ( $wp_current_db_version < 25448 ) {
+ // Convert archived from enum to tinyint.
+ $wpdb->query( "ALTER TABLE $wpdb->blogs CHANGE COLUMN archived archived varchar(1) NOT NULL default '0'" );
+ $wpdb->query( "ALTER TABLE $wpdb->blogs CHANGE COLUMN archived archived tinyint(2) NOT NULL default 0" );
+ }
+ }
}
/**