/home/fortodpl/public_html/wp-admin
NameSizeModeActions
css/-0755rm
images/-0755rm
includes/-0755rm
js/-0755rm
maint/-0755rm
network/-0755rm
user/-0755rm
about.php164850644editdlrm
admin-ajax.php51460644editdlrm
admin-footer.php28040644editdlrm
admin-functions.php4720644editdlrm
admin-header.php92840644editdlrm
admin-post.php20210644editdlrm
admin.php129350644editdlrm
async-upload.php56040644editdlrm
authorize-application.php103350644editdlrm
comment.php116430644editdlrm
contribute.php56560644editdlrm
credits.php41410644editdlrm
custom-background.php4820644editdlrm
custom-header.php4920644editdlrm
customize.php115860644editdlrm
edit-comments.php144840644editdlrm
edit-form-advanced.php294810644editdlrm
edit-form-blocks.php155280644editdlrm
edit-form-comment.php139800644editdlrm
edit-link-form.php63470644editdlrm
edit-tag-form.php106580644editdlrm
edit-tags.php225100644editdlrm
edit.php199520644editdlrm
erase-personal-data.php75050644editdlrm
error_log4050644editdlrm
export-personal-data.php79400644editdlrm
export.php112650644editdlrm
font-library.php14800644editdlrm
freedoms.php45740644editdlrm
import.php77660644editdlrm
index.php78640644editdlrm
install-helper.php69610644editdlrm
install.php183750644editdlrm
link-add.php9340644editdlrm
link-manager.php43610644editdlrm
link-parse-opml.php27210644editdlrm
link.php29570644editdlrm
load-scripts.php20700644editdlrm
load-styles.php29950644editdlrm
media-new.php32490644editdlrm
media-upload.php36680644editdlrm
media.php8190644editdlrm
menu-header.php100520644editdlrm
menu.php181340644editdlrm
moderation.php3070644editdlrm
ms-admin.php1960644editdlrm
ms-delete-site.php46130644editdlrm
ms-edit.php2160644editdlrm
ms-options.php2290644editdlrm
ms-sites.php2150644editdlrm
ms-themes.php2170644editdlrm
ms-upgrade-network.php2190644editdlrm
ms-users.php2150644editdlrm
my-sites.php48310644editdlrm
nav-menus.php501990644editdlrm
network.php55230644editdlrm
options-connectors.php15430644editdlrm
options-discussion.php164030644editdlrm
options-general.php228550644editdlrm
options-head.php6140644editdlrm
options-media.php66400644editdlrm
options-permalink.php224910644editdlrm
options-privacy.php107040644editdlrm
options-reading.php101980644editdlrm
options-writing.php94040644editdlrm
options.php142660644editdlrm
plugin-editor.php140710644editdlrm
plugin-install.php74330644editdlrm
plugins.php307440644editdlrm
post-new.php27680644editdlrm
post.php108210644editdlrm
press-this.php24700644editdlrm
privacy-policy-guide.php37560644editdlrm
privacy.php25120644editdlrm
profile.php2830644editdlrm
revision.php58360644editdlrm
setup-config.php179280644editdlrm
site-editor.php124830644editdlrm
site-health-info.php41730644editdlrm
site-health.php104270644editdlrm
term.php22490644editdlrm
theme-editor.php172790644editdlrm
theme-install.php243150644editdlrm
themes.php497280644editdlrm
tools.php35140644editdlrm
update-core.php462020644editdlrm
update.php130620644editdlrm
upgrade-functions.php3410644editdlrm
upgrade.php63900644editdlrm
upload.php152920644editdlrm
user-edit.php418440644editdlrm
user-new.php246640644editdlrm
users.php256980644editdlrm
widgets-form-blocks.php52350644editdlrm
widgets-form.php195880644editdlrm
widgets.php11120644editdlrm
Edit: /home/fortodpl/public_html/wp-admin/update-core.php (46202B)
current, get_locale() ); if ( 'en_US' === $update->locale && 'en_US' === get_locale() ) { $version_string = $update->current; } elseif ( 'en_US' === $update->locale && $update->packages->partial && $wp_version === $update->partial_version ) { $updates = get_core_updates(); if ( $updates && 1 === count( $updates ) ) { // If the only available update is a partial builds, it doesn't need a language-specific version string. $version_string = $update->current; } } elseif ( 'en_US' === $update->locale && 'en_US' !== get_locale() ) { $version_string = sprintf( '%s–%s', $update->current, $update->locale ); } $current = false; if ( ! isset( $update->response ) || 'latest' === $update->response ) { $current = true; } $message = ''; $form_action = 'update-core.php?action=do-core-upgrade'; $php_version = PHP_VERSION; $mysql_version = $wpdb->db_version(); $show_buttons = true; // Nightly build versions have two hyphens and a commit number. if ( preg_match( '/-\w+-\d+/', $update->current ) ) { // Retrieve the major version number. preg_match( '/^\d+.\d+/', $update->current, $update_major ); /* translators: %s: WordPress version. */ $submit = sprintf( __( 'Update to latest %s nightly' ), $update_major[0] ); } else { /* translators: %s: WordPress version. */ $submit = sprintf( __( 'Update to version %s' ), $version_string ); } if ( 'development' === $update->response ) { $message = __( 'You can update to the latest nightly build manually:' ); } else { if ( $current ) { /* translators: %s: WordPress version. */ $submit = sprintf( __( 'Re-install version %s' ), $version_string ); $form_action = 'update-core.php?action=do-core-reinstall'; } else { $php_compat = version_compare( $php_version, $update->php_version, '>=' ); if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) { $mysql_compat = true; } else { $mysql_compat = version_compare( $mysql_version, $update->mysql_version, '>=' ); } $version_url = sprintf( /* translators: %s: WordPress version. */ esc_url( __( 'https://wordpress.org/documentation/wordpress-version/version-%s/' ) ), sanitize_title( $update->current ) ); $php_update_message = '

' . sprintf( /* translators: %s: URL to Update PHP page. */ __( 'Learn more about updating PHP.' ), esc_url( wp_get_update_php_url() ) ); $annotation = wp_get_update_php_annotation(); if ( $annotation ) { $php_update_message .= '

' . $annotation . ''; } if ( ! $mysql_compat && ! $php_compat ) { $message = sprintf( /* translators: 1: URL to WordPress release notes, 2: WordPress version number, 3: Minimum required PHP version number, 4: Minimum required MySQL version number, 5: Current PHP version number, 6: Current MySQL version number. */ __( 'You cannot update because WordPress %2$s requires PHP version %3$s or higher and MySQL version %4$s or higher. You are running PHP version %5$s and MySQL version %6$s.' ), $version_url, $update->current, $update->php_version, $update->mysql_version, $php_version, $mysql_version ) . $php_update_message; } elseif ( ! $php_compat ) { $message = sprintf( /* translators: 1: URL to WordPress release notes, 2: WordPress version number, 3: Minimum required PHP version number, 4: Current PHP version number. */ __( 'You cannot update because WordPress %2$s requires PHP version %3$s or higher. You are running version %4$s.' ), $version_url, $update->current, $update->php_version, $php_version ) . $php_update_message; } elseif ( ! $mysql_compat ) { $message = sprintf( /* translators: 1: URL to WordPress release notes, 2: WordPress version number, 3: Minimum required MySQL version number, 4: Current MySQL version number. */ __( 'You cannot update because WordPress %2$s requires MySQL version %3$s or higher. You are running version %4$s.' ), $version_url, $update->current, $update->mysql_version, $mysql_version ); } else { $message = sprintf( /* translators: 1: Installed WordPress version number, 2: URL to WordPress release notes, 3: New WordPress version number, including locale if necessary. */ __( 'You can update from WordPress %1$s to WordPress %3$s manually:' ), $wp_version, $version_url, $version_string ); } if ( ! $mysql_compat || ! $php_compat ) { $show_buttons = false; } } } echo '

'; echo $message; echo '

'; echo '
'; wp_nonce_field( 'upgrade-core' ); echo '

'; echo ''; echo ''; if ( $show_buttons ) { if ( $first_pass ) { submit_button( $submit, $current ? '' : 'primary regular', 'upgrade', false ); $first_pass = false; } else { submit_button( $submit, '', 'upgrade', false ); } } if ( 'en_US' !== $update->locale ) { if ( ! isset( $update->dismissed ) || ! $update->dismissed ) { submit_button( __( 'Hide this update' ), '', 'dismiss', false ); } else { submit_button( __( 'Bring back this update' ), '', 'undismiss', false ); } } echo '

'; if ( 'en_US' !== $update->locale && ( ! isset( $wp_local_package ) || $wp_local_package !== $update->locale ) ) { echo '

' . __( 'This localized version contains both the translation and various other localization fixes.' ) . '

'; } elseif ( 'en_US' === $update->locale && 'en_US' !== get_locale() && ( ! $update->packages->partial && $wp_version === $update->partial_version ) ) { // Partial builds don't need language-specific warnings. echo '

' . sprintf( /* translators: %s: WordPress version. */ __( 'You are about to install WordPress %s in English (US). There is a chance this update will break your translation. You may prefer to wait for the localized version to be released.' ), 'development' !== $update->response ? $update->current : '' ) . '

'; } echo '
'; } /** * Display dismissed updates. * * @since 2.7.0 */ function dismissed_updates() { $dismissed = get_core_updates( array( 'dismissed' => true, 'available' => false, ) ); if ( $dismissed ) { $show_text = esc_js( __( 'Show hidden updates' ) ); $hide_text = esc_js( __( 'Hide hidden updates' ) ); ?>

'; echo ''; } } /** * Display upgrade WordPress for downloading latest or upgrading automatically form. * * @since 2.7.0 */ function core_upgrade_preamble() { $updates = get_core_updates(); // Include an unmodified $wp_version. require ABSPATH . WPINC . '/version.php'; $is_development_version = preg_match( '/alpha|beta|RC/', $wp_version ); if ( isset( $updates[0]->version ) && version_compare( $updates[0]->version, $wp_version, '>' ) ) { echo '

'; _e( 'An updated version of WordPress is available.' ); echo '

'; $message = sprintf( /* translators: 1: Documentation on WordPress backups, 2: Documentation on updating WordPress. */ __( 'Important: Before updating, please back up your database and files. For help with updates, visit the Updating WordPress documentation page.' ), __( 'https://developer.wordpress.org/advanced-administration/security/backup/' ), __( 'https://wordpress.org/documentation/article/updating-wordpress/' ) ); wp_admin_notice( $message, array( 'type' => 'warning', 'additional_classes' => array( 'inline' ), ) ); } elseif ( $is_development_version ) { echo '

' . __( 'You are using a development version of WordPress.' ) . '

'; } else { echo '

' . __( 'You have the latest version of WordPress.' ) . '

'; } echo ''; // Don't show the maintenance mode notice when we are only showing a single re-install option. if ( $updates && ( count( $updates ) > 1 || 'latest' !== $updates[0]->response ) ) { echo '

' . __( 'While your site is being updated, it will be in maintenance mode. As soon as your updates are complete, this mode will be deactivated.' ) . '

'; } elseif ( ! $updates ) { list( $normalized_version ) = explode( '-', $wp_version ); echo '

' . sprintf( /* translators: 1: URL to About screen, 2: WordPress version. */ __( 'Learn more about WordPress %2$s.' ), esc_url( self_admin_url( 'about.php' ) ), $normalized_version ) . '

'; } dismissed_updates(); } /** * Display WordPress auto-updates settings. * * @since 5.6.0 */ function core_auto_updates_settings() { if ( isset( $_GET['core-major-auto-updates-saved'] ) ) { if ( 'enabled' === $_GET['core-major-auto-updates-saved'] ) { $notice_text = __( 'Automatic updates for all WordPress versions have been enabled. Thank you!' ); wp_admin_notice( $notice_text, array( 'type' => 'success', 'dismissible' => true, ) ); } elseif ( 'disabled' === $_GET['core-major-auto-updates-saved'] ) { $notice_text = __( 'WordPress will only receive automatic security and maintenance releases from now on.' ); wp_admin_notice( $notice_text, array( 'type' => 'success', 'dismissible' => true, ) ); } } require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; $updater = new WP_Automatic_Updater(); // Defaults: $upgrade_dev = get_site_option( 'auto_update_core_dev', 'enabled' ) === 'enabled'; $upgrade_minor = get_site_option( 'auto_update_core_minor', 'enabled' ) === 'enabled'; $upgrade_major = get_site_option( 'auto_update_core_major', 'unset' ) === 'enabled'; $can_set_update_option = true; // WP_AUTO_UPDATE_CORE = true (all), 'beta', 'rc', 'development', 'branch-development', 'minor', false. if ( defined( 'WP_AUTO_UPDATE_CORE' ) ) { if ( false === WP_AUTO_UPDATE_CORE ) { // Defaults to turned off, unless a filter allows it. $upgrade_dev = false; $upgrade_minor = false; $upgrade_major = false; } elseif ( true === WP_AUTO_UPDATE_CORE || in_array( WP_AUTO_UPDATE_CORE, array( 'beta', 'rc', 'development', 'branch-development' ), true ) ) { // ALL updates for core. $upgrade_dev = true; $upgrade_minor = true; $upgrade_major = true; } elseif ( 'minor' === WP_AUTO_UPDATE_CORE ) { // Only minor updates for core. $upgrade_dev = false; $upgrade_minor = true; $upgrade_major = false; } // The UI is overridden by the `WP_AUTO_UPDATE_CORE` constant. $can_set_update_option = false; } if ( $updater->is_disabled() ) { $upgrade_dev = false; $upgrade_minor = false; $upgrade_major = false; /* * The UI is overridden by the `AUTOMATIC_UPDATER_DISABLED` constant * or the `automatic_updater_disabled` filter, * or by `wp_is_file_mod_allowed( 'automatic_updater' )`. * See `WP_Automatic_Updater::is_disabled()`. */ $can_set_update_option = false; } // Is the UI overridden by a plugin using the `allow_major_auto_core_updates` filter? if ( has_filter( 'allow_major_auto_core_updates' ) ) { $can_set_update_option = false; } /** This filter is documented in wp-admin/includes/class-core-upgrader.php */ $upgrade_dev = apply_filters( 'allow_dev_auto_core_updates', $upgrade_dev ); /** This filter is documented in wp-admin/includes/class-core-upgrader.php */ $upgrade_minor = apply_filters( 'allow_minor_auto_core_updates', $upgrade_minor ); /** This filter is documented in wp-admin/includes/class-core-upgrader.php */ $upgrade_major = apply_filters( 'allow_major_auto_core_updates', $upgrade_major ); $auto_update_settings = array( 'dev' => $upgrade_dev, 'minor' => $upgrade_minor, 'major' => $upgrade_major, ); if ( $upgrade_major ) { $wp_version = wp_get_wp_version(); $updates = get_core_updates(); if ( isset( $updates[0]->version ) && version_compare( $updates[0]->version, $wp_version, '>' ) ) { echo '

' . wp_get_auto_update_message() . '

'; } } $action_url = self_admin_url( 'update-core.php?action=core-major-auto-updates-settings' ); ?>

is_vcs_checkout( ABSPATH ) ) { _e( 'This site appears to be under version control. Automatic updates are disabled.' ); } elseif ( $upgrade_major ) { _e( 'This site is automatically kept up to date with each new version of WordPress.' ); if ( $can_set_update_option ) { echo '
'; printf( '%s', wp_nonce_url( add_query_arg( 'value', 'disable', $action_url ), 'core-major-auto-updates-nonce' ), __( 'Switch to automatic updates for maintenance and security releases only.' ) ); } } elseif ( $upgrade_minor ) { _e( 'This site is automatically kept up to date with maintenance and security releases of WordPress only.' ); if ( $can_set_update_option ) { echo '
'; printf( '%s', wp_nonce_url( add_query_arg( 'value', 'enable', $action_url ), 'core-major-auto-updates-nonce' ), __( 'Enable automatic updates for all new versions of WordPress.' ) ); } } else { _e( 'This site will not receive automatic updates for new versions of WordPress.' ); } ?>

' . __( 'Plugins' ) . ''; echo '

' . __( 'Your plugins are all up to date.' ) . '

'; return; } $form_action = 'update-core.php?action=do-plugin-upgrade'; $core_updates = get_core_updates(); if ( ! isset( $core_updates[0]->response ) || 'latest' === $core_updates[0]->response || 'development' === $core_updates[0]->response || version_compare( $core_updates[0]->current, $cur_wp_version, '=' ) ) { $core_update_version = false; } else { $core_update_version = $core_updates[0]->current; } $plugins_count = count( $plugins ); ?>

(%d)', __( 'Plugins' ), number_format_i18n( $plugins_count ) ); ?>

$plugin_data ) { $plugin_data = (object) _get_plugin_data_markup_translate( $plugin_file, (array) $plugin_data, false, true ); $icon = ''; $preferred_icons = array( 'svg', '2x', '1x', 'default' ); foreach ( $preferred_icons as $preferred_icon ) { if ( ! empty( $plugin_data->update->icons[ $preferred_icon ] ) ) { $icon = ''; break; } } // Get plugin compat for running version of WordPress. if ( isset( $plugin_data->update->tested ) && version_compare( $plugin_data->update->tested, $cur_wp_version, '>=' ) ) { /* translators: %s: WordPress version. */ $compat = '
' . sprintf( __( 'Compatibility with WordPress %s: Yes (according to its author)' ), $cur_wp_version ); } else { /* translators: %s: WordPress version. */ $compat = '
' . sprintf( __( 'Compatibility with WordPress %s: Not tested' ), $cur_wp_version ); } // Get plugin compat for updated version of WordPress. if ( $core_update_version ) { if ( isset( $plugin_data->update->tested ) && version_compare( $plugin_data->update->tested, $core_update_version, '>=' ) ) { /* translators: %s: WordPress version. */ $compat .= '
' . sprintf( __( 'Compatibility with WordPress %s: Yes (according to its author)' ), $core_update_version ); } else { /* translators: %s: WordPress version. */ $compat .= '
' . sprintf( __( 'Compatibility with WordPress %s: Not tested' ), $core_update_version ); } } $requires_php = $plugin_data->update->requires_php ?? null; $compatible_php = is_php_version_compatible( $requires_php ); if ( ! $compatible_php && current_user_can( 'update_php' ) ) { $compat .= '
' . __( 'This update does not work with your version of PHP.' ) . ' '; $compat .= sprintf( /* translators: %s: URL to Update PHP page. */ __( 'Learn more about updating PHP.' ), esc_url( wp_get_update_php_url() ) ); $annotation = wp_get_update_php_annotation(); if ( $annotation ) { $compat .= '

' . $annotation . ''; } } // Get the upgrade notice for the new plugin version. if ( isset( $plugin_data->update->upgrade_notice ) ) { $upgrade_notice = '
' . strip_tags( $plugin_data->update->upgrade_notice ); } else { $upgrade_notice = ''; } $details_url = self_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $plugin_data->update->slug . '§ion=changelog&TB_iframe=true&width=640&height=662' ); $details = sprintf( '%3$s', esc_url( $details_url ), /* translators: 1: Plugin name, 2: Version number. */ esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $plugin_data->Name, $plugin_data->update->new_version ) ), /* translators: %s: Plugin version. */ sprintf( __( 'View version %s details.' ), $plugin_data->update->new_version ) ); $checkbox_id = 'checkbox_' . md5( $plugin_file ); ?>

Name; ?> Version, $plugin_data->update->new_version ); echo ' ' . $details . $compat; if ( in_array( $plugin_file, $auto_updates, true ) ) { echo $auto_update_notice; } echo $upgrade_notice; ?>

' . __( 'Themes' ) . ''; echo '

' . __( 'Your themes are all up to date.' ) . '

'; return; } $form_action = 'update-core.php?action=do-theme-upgrade'; $themes_count = count( $themes ); ?>

(%d)', __( 'Themes' ), number_format_i18n( $themes_count ) ); ?>

Please Note: Any customizations you have made to theme files will be lost. Please consider using child themes for modifications.' ), __( 'https://developer.wordpress.org/themes/advanced-topics/child-themes/' ) ); ?>

$theme ) { $requires_wp = $theme->update['requires'] ?? null; $requires_php = $theme->update['requires_php'] ?? null; $compatible_wp = is_wp_version_compatible( $requires_wp ); $compatible_php = is_php_version_compatible( $requires_php ); $compat = ''; if ( ! $compatible_wp && ! $compatible_php ) { $compat .= '
' . __( 'This update does not work with your versions of WordPress and PHP.' ) . ' '; if ( current_user_can( 'update_core' ) && current_user_can( 'update_php' ) ) { $compat .= sprintf( /* translators: 1: URL to WordPress Updates screen, 2: URL to Update PHP page. */ __( 'Please update WordPress, and then learn more about updating PHP.' ), esc_url( self_admin_url( 'update-core.php' ) ), esc_url( wp_get_update_php_url() ) ); $annotation = wp_get_update_php_annotation(); if ( $annotation ) { $compat .= '

' . $annotation . ''; } } elseif ( current_user_can( 'update_core' ) ) { $compat .= sprintf( /* translators: %s: URL to WordPress Updates screen. */ __( 'Please update WordPress.' ), esc_url( self_admin_url( 'update-core.php' ) ) ); } elseif ( current_user_can( 'update_php' ) ) { $compat .= sprintf( /* translators: %s: URL to Update PHP page. */ __( 'Learn more about updating PHP.' ), esc_url( wp_get_update_php_url() ) ); $annotation = wp_get_update_php_annotation(); if ( $annotation ) { $compat .= '

' . $annotation . ''; } } } elseif ( ! $compatible_wp ) { $compat .= '
' . __( 'This update does not work with your version of WordPress.' ) . ' '; if ( current_user_can( 'update_core' ) ) { $compat .= sprintf( /* translators: %s: URL to WordPress Updates screen. */ __( 'Please update WordPress.' ), esc_url( self_admin_url( 'update-core.php' ) ) ); } } elseif ( ! $compatible_php ) { $compat .= '
' . __( 'This update does not work with your version of PHP.' ) . ' '; if ( current_user_can( 'update_php' ) ) { $compat .= sprintf( /* translators: %s: URL to Update PHP page. */ __( 'Learn more about updating PHP.' ), esc_url( wp_get_update_php_url() ) ); $annotation = wp_get_update_php_annotation(); if ( $annotation ) { $compat .= '

' . $annotation . ''; } } } $checkbox_id = 'checkbox_' . md5( $theme->get( 'Name' ) ); ?>

display( 'Name' ); ?> display( 'Version' ), $theme->update['new_version'] ); echo ' ' . $compat; if ( in_array( $stylesheet, $auto_updates, true ) ) { echo $auto_update_notice; } ?>

' . __( 'Translations' ) . ''; echo '

' . __( 'Your translations are all up to date.' ) . '

'; } return; } $form_action = 'update-core.php?action=do-translation-upgrade'; ?>

new_files ) && ! $update->new_files; ?>

'; return; } if ( ! WP_Filesystem( $credentials, ABSPATH, $allow_relaxed_file_ownership ) ) { // Failed to connect. Error and request again. request_filesystem_credentials( $url, '', true, ABSPATH, array( 'version', 'locale' ), $allow_relaxed_file_ownership ); echo '
'; return; } if ( $wp_filesystem->errors->has_errors() ) { foreach ( $wp_filesystem->errors->get_error_messages() as $message ) { show_message( $message ); } echo '
'; return; } if ( $reinstall ) { $update->response = 'reinstall'; } add_filter( 'update_feedback', 'show_message' ); $upgrader = new Core_Upgrader(); $result = $upgrader->upgrade( $update, array( 'allow_relaxed_file_ownership' => $allow_relaxed_file_ownership, ) ); if ( is_wp_error( $result ) ) { show_message( $result ); if ( 'up_to_date' !== $result->get_error_code() && 'locked' !== $result->get_error_code() ) { show_message( __( 'Installation failed.' ) ); } echo ''; return; } show_message( __( 'WordPress updated successfully.' ) ); show_message( '' . sprintf( /* translators: 1: WordPress version, 2: URL to About screen. */ __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click here.' ), $result, esc_url( self_admin_url( 'about.php?updated' ) ) ) . '' ); show_message( '' . sprintf( /* translators: 1: WordPress version, 2: URL to About screen. */ __( 'Welcome to WordPress %1$s. Learn more.' ), $result, esc_url( self_admin_url( 'about.php?updated' ) ) ) . '' ); ?> ' . __( 'On this screen, you can update to the latest version of WordPress, as well as update your themes, plugins, and translations.' ) . '

'; $updates_overview .= '

' . __( 'If an update is available, you᾿ll see a notification appear in the Toolbar and navigation menu.' ) . ' ' . __( 'Keeping your site updated is important for security. It also makes the internet a safer place for you and your readers.' ) . '

'; get_current_screen()->add_help_tab( array( 'id' => 'overview', 'title' => __( 'Overview' ), 'content' => $updates_overview, ) ); $updates_howto = '

' . __( 'WordPress — Updating your WordPress installation is a simple one-click procedure: just click on the “Update now” button when you are notified that a new version is available.' ) . ' ' . __( 'In most cases, WordPress will automatically apply maintenance and security updates in the background for you.' ) . '

'; $updates_howto .= '

' . __( 'Themes and Plugins — To update individual themes or plugins from this screen, use the checkboxes to make your selection, then click on the appropriate “Update” button. To update all of your themes or plugins at once, you can check the box at the top of the section to select all before clicking the update button.' ) . '

'; if ( 'en_US' !== get_locale() ) { $updates_howto .= '

' . __( 'Translations — The files translating WordPress into your language are updated for you whenever any other updates occur. But if these files are out of date, you can click the “Update Translations” button.' ) . '

'; } get_current_screen()->add_help_tab( array( 'id' => 'how-to-update', 'title' => __( 'How to Update' ), 'content' => $updates_howto, ) ); $help_sidebar_autoupdates = ''; if ( ( current_user_can( 'update_themes' ) && wp_is_auto_update_enabled_for_type( 'theme' ) ) || ( current_user_can( 'update_plugins' ) && wp_is_auto_update_enabled_for_type( 'plugin' ) ) ) { $help_tab_autoupdates = '

' . __( 'Auto-updates can be enabled or disabled for WordPress major versions and for each individual theme or plugin. Themes or plugins with auto-updates enabled will display the estimated date of the next auto-update. Auto-updates depends on the WP-Cron task scheduling system.' ) . '

'; $help_tab_autoupdates .= '

' . __( 'Please note: Third-party themes and plugins, or custom code, may override WordPress scheduling.' ) . '

'; get_current_screen()->add_help_tab( array( 'id' => 'plugins-themes-auto-updates', 'title' => __( 'Auto-updates' ), 'content' => $help_tab_autoupdates, ) ); $help_sidebar_autoupdates = '

' . __( 'Documentation on Auto-updates' ) . '

'; } $help_sidebar_rollback = ''; if ( current_user_can( 'update_themes' ) || current_user_can( 'update_plugins' ) ) { $rollback_help = '

' . __( 'This feature will create a temporary backup of a plugin or theme before it is upgraded. This backup is used to restore the plugin or theme back to its previous state if there is an error during the update process.' ) . '

'; $rollback_help .= '

' . __( 'On systems with fewer resources, this may lead to server timeouts or resource limits being reached. If you encounter an issue during the update process, please create a support forum topic and reference Rollback in the issue title.' ) . '

'; get_current_screen()->add_help_tab( array( 'id' => 'rollback-plugins-themes', 'title' => __( 'Restore Plugin or Theme' ), 'content' => $rollback_help, ) ); $help_sidebar_rollback = '

' . __( 'Common Errors' ) . '

'; } get_current_screen()->set_help_sidebar( '

' . __( 'For more information:' ) . '

' . '

' . __( 'Documentation on Updating WordPress' ) . '

' . $help_sidebar_autoupdates . '

' . __( 'Support forums' ) . '

' . $help_sidebar_rollback ); if ( 'upgrade-core' === $action ) { // Force an update check when requested. $force_check = ! empty( $_GET['force-check'] ); wp_version_check( array(), $force_check ); require_once ABSPATH . 'wp-admin/admin-header.php'; ?>

array( 'error' ), ) ); } } else { $plugin_updates = get_plugin_updates(); if ( ! empty( $plugin_updates ) ) { wp_admin_notice( __( 'Please select one or more plugins to update.' ), array( 'additional_classes' => array( 'error' ), ) ); } } } $last_update_check = false; $current = get_site_transient( 'update_core' ); if ( $current && isset( $current->last_checked ) ) { $last_update_check = $current->last_checked + (int) ( (float) get_option( 'gmt_offset' ) * HOUR_IN_SECONDS ); } echo '

'; /* translators: Current version of WordPress. */ printf( __( 'Current version: %s' ), esc_html( wp_get_wp_version() ) ); echo '

'; echo '

'; printf( /* translators: 1: Date, 2: Time. */ __( 'Last checked on %1$s at %2$s.' ), /* translators: Last update date format. See https://www.php.net/manual/datetime.format.php */ date_i18n( __( 'F j, Y' ), $last_update_check ), /* translators: Last update time format. See https://www.php.net/manual/datetime.format.php */ date_i18n( __( 'g:i a T' ), $last_update_check ) ); echo ' ' . __( 'Check again.' ) . ''; echo '

'; if ( current_user_can( 'update_core' ) ) { core_auto_updates_settings(); core_upgrade_preamble(); } if ( current_user_can( 'update_plugins' ) ) { list_plugin_updates(); } if ( current_user_can( 'update_themes' ) ) { list_theme_updates(); } if ( current_user_can( 'update_languages' ) ) { list_translation_updates(); } /** * Fires after the core, plugin, and theme update tables. * * @since 2.9.0 */ do_action( 'core_upgrade_preamble' ); echo '
'; wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'do-core-upgrade' === $action || 'do-core-reinstall' === $action ) { if ( ! current_user_can( 'update_core' ) ) { wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); } check_admin_referer( 'upgrade-core' ); // Do the (un)dismiss actions before headers, so that they can redirect. if ( isset( $_POST['dismiss'] ) ) { do_dismiss_core_update(); } elseif ( isset( $_POST['undismiss'] ) ) { do_undismiss_core_update(); } require_once ABSPATH . 'wp-admin/admin-header.php'; if ( 'do-core-reinstall' === $action ) { $reinstall = true; } else { $reinstall = false; } if ( isset( $_POST['upgrade'] ) ) { do_core_upgrade( $reinstall ); } wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'do-plugin-upgrade' === $action ) { if ( ! current_user_can( 'update_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); } check_admin_referer( 'upgrade-core' ); if ( isset( $_GET['plugins'] ) ) { $plugins = explode( ',', $_GET['plugins'] ); } elseif ( isset( $_POST['checked'] ) ) { $plugins = (array) $_POST['checked']; } else { wp_redirect( admin_url( 'update-core.php' ) ); exit; } $url = 'update.php?action=update-selected&plugins=' . urlencode( implode( ',', $plugins ) ); $url = wp_nonce_url( $url, 'bulk-update-plugins' ); // Used in the HTML title tag. $title = __( 'Update Plugins' ); require_once ABSPATH . 'wp-admin/admin-header.php'; ?>

wp_get_update_data(), ) ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'do-theme-upgrade' === $action ) { if ( ! current_user_can( 'update_themes' ) ) { wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); } check_admin_referer( 'upgrade-core' ); if ( isset( $_GET['themes'] ) ) { $themes = explode( ',', $_GET['themes'] ); } elseif ( isset( $_POST['checked'] ) ) { $themes = (array) $_POST['checked']; } else { wp_redirect( admin_url( 'update-core.php' ) ); exit; } $url = 'update.php?action=update-selected-themes&themes=' . urlencode( implode( ',', $themes ) ); $url = wp_nonce_url( $url, 'bulk-update-themes' ); // Used in the HTML title tag. $title = __( 'Update Themes' ); require_once ABSPATH . 'wp-admin/admin-header.php'; ?>

wp_get_update_data(), ) ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'do-translation-upgrade' === $action ) { if ( ! current_user_can( 'update_languages' ) ) { wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); } check_admin_referer( 'upgrade-translations' ); require_once ABSPATH . 'wp-admin/admin-header.php'; require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; $url = 'update-core.php?action=do-translation-upgrade'; $nonce = 'upgrade-translations'; $title = __( 'Update Translations' ); $context = WP_LANG_DIR; $upgrader = new Language_Pack_Upgrader( new Language_Pack_Upgrader_Skin( compact( 'url', 'nonce', 'title', 'context' ) ) ); $result = $upgrader->bulk_upgrade(); wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'core-major-auto-updates-settings' === $action ) { if ( ! current_user_can( 'update_core' ) ) { wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); } $redirect_url = self_admin_url( 'update-core.php' ); if ( isset( $_GET['value'] ) ) { check_admin_referer( 'core-major-auto-updates-nonce' ); if ( 'enable' === $_GET['value'] ) { update_site_option( 'auto_update_core_major', 'enabled' ); $redirect_url = add_query_arg( 'core-major-auto-updates-saved', 'enabled', $redirect_url ); } elseif ( 'disable' === $_GET['value'] ) { update_site_option( 'auto_update_core_major', 'disabled' ); $redirect_url = add_query_arg( 'core-major-auto-updates-saved', 'disabled', $redirect_url ); } } wp_redirect( $redirect_url ); exit; } else { /** * Fires for each custom update action on the WordPress Updates screen. * * The dynamic portion of the hook name, `$action`, refers to the * passed update action. The hook fires in lieu of all available * default update actions. * * @since 3.2.0 */ do_action( "update-core-custom_{$action}" ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores }