upgrade_network()

In this article

Executes network-level upgrade routines.

Source

function upgrade_network() {	global $wp_current_db_version, $wpdb;	// Always clear expired transients.	delete_expired_transients( true );	// 2.8.0	if ( $wp_current_db_version < 11549 ) {	$wpmu_sitewide_plugins = get_site_option( 'wpmu_sitewide_plugins' );	$active_sitewide_plugins = get_site_option( 'active_sitewide_plugins' );	if ( $wpmu_sitewide_plugins ) {	if ( ! $active_sitewide_plugins ) {	$sitewide_plugins = (array) $wpmu_sitewide_plugins;	} else {	$sitewide_plugins = array_merge( (array) $active_sitewide_plugins, (array) $wpmu_sitewide_plugins );	}	update_site_option( 'active_sitewide_plugins', $sitewide_plugins );	}	delete_site_option( 'wpmu_sitewide_plugins' );	delete_site_option( 'deactivated_sitewide_plugins' );	$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 ) {	$value = $row->meta_value;	if ( ! @unserialize( $value ) ) {	$value = stripslashes( $value );	}	if ( $value !== $row->meta_value ) {	update_site_option( $row->meta_key, $value );	}	}	$start += 20;	}	}	// 3.0.0	if ( $wp_current_db_version < 13576 ) {	update_site_option( 'global_terms_enabled', '1' );	}	// 3.3.0	if ( $wp_current_db_version < 19390 ) {	update_site_option( 'initial_db_version', $wp_current_db_version );	}	if ( $wp_current_db_version < 19470 ) {	if ( false === get_site_option( 'active_sitewide_plugins' ) ) {	update_site_option( 'active_sitewide_plugins', array() );	}	}	// 3.4.0	if ( $wp_current_db_version < 20148 ) {	// 'allowedthemes' keys things by stylesheet. 'allowed_themes' keyed things by name.	$allowedthemes = get_site_option( 'allowedthemes' );	$allowed_themes = get_site_option( 'allowed_themes' );	if ( false === $allowedthemes && is_array( $allowed_themes ) && $allowed_themes ) {	$converted = array();	$themes = wp_get_themes();	foreach ( $themes as $stylesheet => $theme_data ) {	if ( isset( $allowed_themes[ $theme_data->get( 'Name' ) ] ) ) {	$converted[ $stylesheet ] = true;	}	}	update_site_option( 'allowedthemes', $converted );	delete_site_option( 'allowed_themes' );	}	}	// 3.5.0	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 );	}	}	// 4.2.0	if ( $wp_current_db_version < 31351 && 'utf8mb4' === $wpdb->charset ) {	if ( wp_should_upgrade_global_tables() ) {	$wpdb->query( "ALTER TABLE $wpdb->usermeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );	$wpdb->query( "ALTER TABLE $wpdb->site DROP INDEX domain, ADD INDEX domain(domain(140),path(51))" );	$wpdb->query( "ALTER TABLE $wpdb->sitemeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );	$wpdb->query( "ALTER TABLE $wpdb->signups DROP INDEX domain_path, ADD INDEX domain_path(domain(140),path(51))" );	$tables = $wpdb->tables( 'global' );	// sitecategories may not exist.	if ( ! $wpdb->get_var( "SHOW TABLES LIKE '{$tables['sitecategories']}'" ) ) {	unset( $tables['sitecategories'] );	}	foreach ( $tables as $table ) {	maybe_convert_table_to_utf8mb4( $table );	}	}	}	// 4.3.0	if ( $wp_current_db_version < 33055 && 'utf8mb4' === $wpdb->charset ) {	if ( wp_should_upgrade_global_tables() ) {	$upgrade = false;	$indexes = $wpdb->get_results( "SHOW INDEXES FROM $wpdb->signups" );	foreach ( $indexes as $index ) {	if ( 'domain_path' === $index->Key_name && 'domain' === $index->Column_name && '140' !== $index->Sub_part ) {	$upgrade = true;	break;	}	}	if ( $upgrade ) {	$wpdb->query( "ALTER TABLE $wpdb->signups DROP INDEX domain_path, ADD INDEX domain_path(domain(140),path(51))" );	}	$tables = $wpdb->tables( 'global' );	// sitecategories may not exist.	if ( ! $wpdb->get_var( "SHOW TABLES LIKE '{$tables['sitecategories']}'" ) ) {	unset( $tables['sitecategories'] );	}	foreach ( $tables as $table ) {	maybe_convert_table_to_utf8mb4( $table );	}	}	}	// 5.1.0	if ( $wp_current_db_version < 44467 ) {	$network_id = get_main_network_id();	delete_network_option( $network_id, 'site_meta_supported' );	is_site_meta_supported();	} } 

Changelog

VersionDescription
3.0.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.