On this page
wp_update_site( int $site_id, array $data ): int|WP_Error
Updates a site in the database.
Parameters
$site_idint Required-
ID of the site that should be updated.
$dataarray Required-
Site data to update. See wp_insert_site() for the list of supported keys.
More Arguments from wp_insert_site( ... $data )
Data for the new site that should be inserted.
domainstringSite domain. Default empty string.pathstringSite path. Default'/'.network_idintThe site's network ID. Default is the current network ID.registeredstringWhen the site was registered, in SQL datetime format. Default is the current time.last_updatedstringWhen the site was last updated, in SQL datetime format. Default is the value of $registered.publicintWhether the site is public. Default 1.archivedintWhether the site is archived. Default 0.matureintWhether the site is mature. Default 0.spamintWhether the site is spam. Default 0.deletedintWhether the site is deleted. Default 0.lang_idintThe site's language ID. Currently unused. Default 0.user_idintUser ID for the site administrator. Passed to thewp_initialize_sitehook.titlestringSite title. Default is 'Site %d' where %d is the site ID. Passed to thewp_initialize_sitehook.optionsarrayCustom option $key => $value pairs to use. Default empty array. Passed to thewp_initialize_sitehook.metaarrayCustom site metadata $key => $value pairs to use. Default empty array.
Passed to thewp_initialize_sitehook.
Return
int|WP_Error The updated site's ID on success, or error object on failure.
Source
File: wp-includes/ms-site.php. View all references
function wp_update_site( $site_id, array $data ) {
global $wpdb;
if ( empty( $site_id ) ) {
return new WP_Error( 'site_empty_id', __( 'Site ID must not be empty.' ) );
}
$old_site = get_site( $site_id );
if ( ! $old_site ) {
return new WP_Error( 'site_not_exist', __( 'Site does not exist.' ) );
}
$defaults = $old_site->to_array();
$defaults['network_id'] = (int) $defaults['site_id'];
$defaults['last_updated'] = current_time( 'mysql', true );
unset( $defaults['blog_id'], $defaults['site_id'] );
$data = wp_prepare_site_data( $data, $defaults, $old_site );
if ( is_wp_error( $data ) ) {
return $data;
}
if ( false === $wpdb->update( $wpdb->blogs, $data, array( 'blog_id' => $old_site->id ) ) ) {
return new WP_Error( 'db_update_error', __( 'Could not update site in the database.' ), $wpdb->last_error );
}
clean_blog_cache( $old_site );
$new_site = get_site( $old_site->id );
/**
* Fires once a site has been updated in the database.
*
* @since 5.1.0
*
* @param WP_Site $new_site New site object.
* @param WP_Site $old_site Old site object.
*/
do_action( 'wp_update_site', $new_site, $old_site );
return (int) $new_site->id;
}
Hooks
- do_action( 'wp_update_site',
WP_Site $new_site ,WP_Site $old_site ) -
Fires once a site has been updated in the database.
Related
Uses
| Uses | Description |
|---|---|
| wp_prepare_site_data() wp-includes/ms-site.php | Prepares site data for insertion or update in the database. |
| get_site() wp-includes/ms-site.php | Retrieves site data given a site ID or site object. |
| current_time() wp-includes/functions.php | Retrieves the current time based on specified type. |
| clean_blog_cache() wp-includes/ms-site.php | Clean the blog cache |
| wpdb::update() wp-includes/class-wpdb.php | Updates a row in the table. |
| __() wp-includes/l10n.php | Retrieves the translation of $text. |
| do_action() wp-includes/plugin.php | Calls the callback functions that have been added to an action hook. |
| is_wp_error() wp-includes/load.php | Checks whether the given variable is a WordPress Error. |
| WP_Error::__construct() wp-includes/class-wp-error.php | Initializes the error. |
Used By
| Used By | Description |
|---|---|
| update_blog_status() wp-includes/ms-blogs.php | Update a blog details field. |
| update_blog_details() wp-includes/ms-blogs.php | Update the details for a blog. Updates the blogs table for a given blog ID. |
Changelog
| Version | Description |
|---|---|
| 5.1.0 | Introduced. |
© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_update_site