[ Index ]

PHP Cross Reference of WordPress Trunk (Updated Daily)

Search

title

Body

[close]

/wp-admin/includes/ -> update-core.php (summary)

WordPress core upgrade functionality.

File Size: 1541 lines (60 kb)
Included or required: 1 time
Referenced: 4 times
Includes or requires: 1 file
 wp-admin/admin-footer.php

Defines 6 functions

  update_core()
  _copy_dir()
  _redirect_to_about_wordpress()
  _upgrade_422_remove_genericons()
  _upgrade_422_find_genericons_files_in_folder()
  _upgrade_440_force_deactivate_incompatible_plugins()

Functions
Functions that are not part of a class:

update_core( $from, $to )   X-Ref
Upgrades the core of WordPress.

This will create a .maintenance file at the base of the WordPress directory
to ensure that people can not access the web site, when the files are being
copied to their locations.

The files in the `$_old_files` list will be removed and the new files
copied from the zip file after the database is upgraded.

The files in the `$_new_bundled_files` list will be added to the installation
if the version is greater than or equal to the old version being upgraded.

The steps for the upgrader for after the new release is downloaded and
unzipped is:
1. Test unzipped location for select files to ensure that unzipped worked.
2. Create the .maintenance file in current WordPress base.
3. Copy new WordPress directory over old WordPress files.
4. Upgrade WordPress to new version.
4.1. Copy all files/folders other than wp-content
4.2. Copy any language files to WP_LANG_DIR (which may differ from WP_CONTENT_DIR
4.3. Copy any new bundled themes/plugins to their respective locations
5. Delete new WordPress directory path.
6. Delete .maintenance file.
7. Remove old files.
8. Delete 'update_core' option.

There are several areas of failure. For instance if PHP times out before step
6, then you will not be able to access any portion of your site. Also, since
the upgrade will not continue where it left off, you will not be able to
automatically remove old files and remove the 'update_core' option. This
isn't that bad.

If the copy of the new WordPress over the old fails, then the worse is that
the new WordPress directory will remain.

If it is assumed that every file will be copied over, including plugins and
themes, then if you edit the default theme, you should rename it, so that
your changes remain.

param: string $from New release unzipped path.
param: string $to   Path to old WordPress installation.
return: string|WP_Error New WordPress version on success, WP_Error on failure.

_copy_dir( $from, $to, $skip_list = array()   X-Ref
Copies a directory from one location to another via the WordPress Filesystem Abstraction.

Assumes that WP_Filesystem() has already been called and setup.

This is a standalone copy of the `copy_dir()` function that is used to
upgrade the core files. It is placed here so that the version of this
function from the *new* WordPress version will be called.

It was initially added for the 3.1 -> 3.2 upgrade.

param: string   $from      Source directory.
param: string   $to        Destination directory.
param: string[] $skip_list Array of files/folders to skip copying.
return: true|WP_Error True on success, WP_Error on failure.

_redirect_to_about_wordpress( $new_version )   X-Ref
Redirect to the About WordPress page after a successful upgrade.

This function is only needed when the existing installation is older than 3.4.0.

param: string $new_version

_upgrade_422_remove_genericons()   X-Ref
Cleans up Genericons example files.


_upgrade_422_find_genericons_files_in_folder( $directory )   X-Ref
Recursively find Genericons example files in a given folder.

param: string $directory Directory path. Expects trailingslashed.
return: array

_upgrade_440_force_deactivate_incompatible_plugins()   X-Ref




Generated : Mon Aug 3 08:20:02 2020 Cross-referenced by PHPXref