at path๏ผ
ROOT
/
wp-admin
/
update.php
run๏ผ
R
W
Run
css
DIR
2025-10-18 22:52:46
R
W
Run
images
DIR
2026-01-20 02:08:46
R
W
Run
includes
DIR
2025-10-18 22:52:47
R
W
Run
js
DIR
2025-10-18 22:52:48
R
W
Run
maint
DIR
2025-10-18 22:52:48
R
W
Run
network
DIR
2025-10-18 22:52:48
R
W
Run
user
DIR
2025-10-18 22:52:48
R
W
Run
.htaccess
166 By
2025-10-28 03:55:36
R
W
Run
0zh.php
0 By
2026-01-20 04:21:22
R
W
Run
Delete
Rename
about.php
19.64 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
admin-ajax.php
5.03 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
admin-footer.php
2.77 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
admin-functions.php
479 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
admin-header.php
9.12 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
admin-post.php
1.97 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
admin.php
12.3 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
async-upload.php
4.87 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
authorize-application.php
10.09 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
bayss.php
0 By
2026-01-20 04:21:22
R
W
Run
Delete
Rename
comment.php
11.35 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
contribute.php
5.59 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
credits.php
4.11 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
custom-background.php
489 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
custom-header.php
499 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
customize.php
10.91 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
dd.php
0 By
2026-01-20 04:21:22
R
W
Run
Delete
Rename
edit-comments.php
14.38 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit-form-advanced.php
28.83 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit-form-blocks.php
14.37 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit-form-comment.php
8.34 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit-link-form.php
6.21 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit-tag-form.php
10.44 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit-tags.php
22 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
edit.php
19.48 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
erase-personal-data.php
7.33 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
error_log
1.77 MB
2026-01-20 21:05:48
R
W
Run
Delete
Rename
export-personal-data.php
7.75 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
export.php
11.02 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
freedoms.php
4.54 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
front-page-template-1768812833.php
0 By
2026-01-19 13:41:18
R
W
Run
Delete
Rename
import.php
7.58 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
index.php
7.68 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
install-helper.php
6.8 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
install.php
17.94 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
link-add.php
934 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
link-manager.php
4.26 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
link-parse-opml.php
2.63 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
link.php
2.89 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
load-scripts.php
2.02 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
load-styles.php
2.92 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
media-new.php
3.18 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
media-upload.php
3.58 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
media.php
819 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
menu-header.php
9.82 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
menu.php
16.97 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
moderation.php
307 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-admin.php
196 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-delete-site.php
4.19 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-edit.php
216 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-options.php
229 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-sites.php
215 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-themes.php
217 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-upgrade-network.php
219 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
ms-users.php
215 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
my-sites.php
4.74 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
nav-menus.php
48.26 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
network.php
5.39 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-discussion.php
15.4 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-general.php
21.58 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-head.php
621 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-media.php
6.35 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-permalink.php
21.21 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-privacy.php
9.95 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-reading.php
10.03 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options-writing.php
9.1 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
options.php
13.45 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
pchun.php
15.53 KB
2026-01-20 04:21:22
R
W
Run
Delete
Rename
plugin-editor.php
13.66 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
plugin-install.php
6.96 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
plugins.php
30 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
post-new.php
2.7 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
post.php
9.97 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
press-this.php
2.34 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
privacy-policy-guide.php
3.67 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
privacy.php
2.52 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
profile.php
283 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
revision.php
5.71 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
setup-config.php
17.48 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
site-editor.php
11.83 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
site-health-info.php
3.99 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
site-health.php
10.2 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
style2.php
0 By
2026-01-20 04:21:22
R
W
Run
Delete
Rename
term.php
2.2 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
theme-editor.php
15.59 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
theme-install.php
23.37 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
themes.php
48.12 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
tool1.php
0 By
2026-01-20 04:21:22
R
W
Run
Delete
Rename
tools.php
3.43 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
tpf.txt
1 By
2026-01-19 15:53:35
R
W
Run
Delete
Rename
update-core.php
45.43 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
update.php
12.79 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
upgrade-functions.php
341 By
2025-10-18 22:56:58
R
W
Run
Delete
Rename
upgrade.php
6.33 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
upload.php
14.84 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
user-edit.php
39.79 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
user-new.php
24.05 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
users.php
23.28 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
widgets-form-blocks.php
4.97 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
widgets-form.php
19.17 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
widgets.php
1.09 KB
2025-10-18 22:56:58
R
W
Run
Delete
Rename
wp-ssfc.php
0 By
2026-01-20 04:21:22
R
W
Run
Delete
Rename
error_log
up
๐
update.php
Save
<?php /** * Update/Install Plugin/Theme administration panel. * * @package WordPress * @subpackage Administration */ if ( ! defined( 'IFRAME_REQUEST' ) && isset( $_GET['action'] ) && in_array( $_GET['action'], array( 'update-selected', 'activate-plugin', 'update-selected-themes' ), true ) ) { define( 'IFRAME_REQUEST', true ); } /** WordPress Administration Bootstrap */ require_once __DIR__ . '/admin.php'; require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; wp_enqueue_script( 'wp-a11y' ); if ( isset( $_GET['action'] ) ) { $plugin = isset( $_REQUEST['plugin'] ) ? trim( $_REQUEST['plugin'] ) : ''; $theme = isset( $_REQUEST['theme'] ) ? urldecode( $_REQUEST['theme'] ) : ''; $action = isset( $_REQUEST['action'] ) ? $_REQUEST['action'] : ''; if ( 'update-selected' === $action ) { if ( ! current_user_can( 'update_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to update plugins for this site.' ) ); } check_admin_referer( 'bulk-update-plugins' ); if ( isset( $_GET['plugins'] ) ) { $plugins = explode( ',', stripslashes( $_GET['plugins'] ) ); } elseif ( isset( $_POST['checked'] ) ) { $plugins = (array) $_POST['checked']; } else { $plugins = array(); } $plugins = array_map( 'urldecode', $plugins ); $url = 'update.php?action=update-selected&plugins=' . urlencode( implode( ',', $plugins ) ); $nonce = 'bulk-update-plugins'; wp_enqueue_script( 'updates' ); iframe_header(); $upgrader = new Plugin_Upgrader( new Bulk_Plugin_Upgrader_Skin( compact( 'nonce', 'url' ) ) ); $upgrader->bulk_upgrade( $plugins ); iframe_footer(); } elseif ( 'upgrade-plugin' === $action ) { if ( ! current_user_can( 'update_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to update plugins for this site.' ) ); } check_admin_referer( 'upgrade-plugin_' . $plugin ); // Used in the HTML title tag. $title = __( 'Update Plugin' ); $parent_file = 'plugins.php'; $submenu_file = 'plugins.php'; wp_enqueue_script( 'updates' ); require_once ABSPATH . 'wp-admin/admin-header.php'; $nonce = 'upgrade-plugin_' . $plugin; $url = 'update.php?action=upgrade-plugin&plugin=' . urlencode( $plugin ); $upgrader = new Plugin_Upgrader( new Plugin_Upgrader_Skin( compact( 'title', 'nonce', 'url', 'plugin' ) ) ); $upgrader->upgrade( $plugin ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'activate-plugin' === $action ) { if ( ! current_user_can( 'update_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to update plugins for this site.' ) ); } check_admin_referer( 'activate-plugin_' . $plugin ); if ( ! isset( $_GET['failure'] ) && ! isset( $_GET['success'] ) ) { wp_redirect( admin_url( 'update.php?action=activate-plugin&failure=true&plugin=' . urlencode( $plugin ) . '&_wpnonce=' . $_GET['_wpnonce'] ) ); activate_plugin( $plugin, '', ! empty( $_GET['networkwide'] ), true ); wp_redirect( admin_url( 'update.php?action=activate-plugin&success=true&plugin=' . urlencode( $plugin ) . '&_wpnonce=' . $_GET['_wpnonce'] ) ); die(); } iframe_header( __( 'Plugin Reactivation' ), true ); if ( isset( $_GET['success'] ) ) { echo '<p>' . __( 'Plugin reactivated successfully.' ) . '</p>'; } if ( isset( $_GET['failure'] ) ) { echo '<p>' . __( 'Plugin failed to reactivate due to a fatal error.' ) . '</p>'; error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR ); ini_set( 'display_errors', true ); // Ensure that fatal errors are displayed. wp_register_plugin_realpath( WP_PLUGIN_DIR . '/' . $plugin ); include WP_PLUGIN_DIR . '/' . $plugin; } iframe_footer(); } elseif ( 'install-plugin' === $action ) { if ( ! current_user_can( 'install_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to install plugins on this site.' ) ); } require_once ABSPATH . 'wp-admin/includes/plugin-install.php'; // For plugins_api(). check_admin_referer( 'install-plugin_' . $plugin ); $api = plugins_api( 'plugin_information', array( 'slug' => $plugin, 'fields' => array( 'sections' => false, ), ) ); if ( is_wp_error( $api ) ) { wp_die( $api ); } // Used in the HTML title tag. $title = __( 'Plugin Installation' ); $parent_file = 'plugins.php'; $submenu_file = 'plugin-install.php'; require_once ABSPATH . 'wp-admin/admin-header.php'; /* translators: %s: Plugin name and version. */ $title = sprintf( __( 'Installing Plugin: %s' ), $api->name . ' ' . $api->version ); $nonce = 'install-plugin_' . $plugin; $url = 'update.php?action=install-plugin&plugin=' . urlencode( $plugin ); if ( isset( $_GET['from'] ) ) { $url .= '&from=' . urlencode( stripslashes( $_GET['from'] ) ); } $type = 'web'; // Install plugin type, From Web or an Upload. $upgrader = new Plugin_Upgrader( new Plugin_Installer_Skin( compact( 'title', 'url', 'nonce', 'plugin', 'api' ) ) ); $upgrader->install( $api->download_link ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'upload-plugin' === $action ) { if ( ! current_user_can( 'upload_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to install plugins on this site.' ) ); } check_admin_referer( 'plugin-upload' ); if ( isset( $_FILES['pluginzip']['name'] ) && ! str_ends_with( strtolower( $_FILES['pluginzip']['name'] ), '.zip' ) ) { wp_die( __( 'Only .zip archives may be uploaded.' ) ); } $file_upload = new File_Upload_Upgrader( 'pluginzip', 'package' ); // Used in the HTML title tag. $title = __( 'Upload Plugin' ); $parent_file = 'plugins.php'; $submenu_file = 'plugin-install.php'; require_once ABSPATH . 'wp-admin/admin-header.php'; /* translators: %s: File name. */ $title = sprintf( __( 'Installing plugin from uploaded file: %s' ), esc_html( basename( $file_upload->filename ) ) ); $nonce = 'plugin-upload'; $url = add_query_arg( array( 'package' => $file_upload->id ), 'update.php?action=upload-plugin' ); $type = 'upload'; // Install plugin type, From Web or an Upload. $overwrite = isset( $_GET['overwrite'] ) ? sanitize_text_field( $_GET['overwrite'] ) : ''; $overwrite = in_array( $overwrite, array( 'update-plugin', 'downgrade-plugin' ), true ) ? $overwrite : ''; $upgrader = new Plugin_Upgrader( new Plugin_Installer_Skin( compact( 'type', 'title', 'nonce', 'url', 'overwrite' ) ) ); $result = $upgrader->install( $file_upload->package, array( 'overwrite_package' => $overwrite ) ); if ( $result || is_wp_error( $result ) ) { $file_upload->cleanup(); } require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'upload-plugin-cancel-overwrite' === $action ) { if ( ! current_user_can( 'upload_plugins' ) ) { wp_die( __( 'Sorry, you are not allowed to install plugins on this site.' ) ); } check_admin_referer( 'plugin-upload-cancel-overwrite' ); // Make sure the attachment still exists, or File_Upload_Upgrader will call wp_die() // that shows a generic "Please select a file" error. if ( ! empty( $_GET['package'] ) ) { $attachment_id = (int) $_GET['package']; if ( get_post( $attachment_id ) ) { $file_upload = new File_Upload_Upgrader( 'pluginzip', 'package' ); $file_upload->cleanup(); } } wp_redirect( self_admin_url( 'plugin-install.php' ) ); exit; } elseif ( 'upgrade-theme' === $action ) { if ( ! current_user_can( 'update_themes' ) ) { wp_die( __( 'Sorry, you are not allowed to update themes for this site.' ) ); } check_admin_referer( 'upgrade-theme_' . $theme ); wp_enqueue_script( 'updates' ); // Used in the HTML title tag. $title = __( 'Update Theme' ); $parent_file = 'themes.php'; $submenu_file = 'themes.php'; require_once ABSPATH . 'wp-admin/admin-header.php'; $nonce = 'upgrade-theme_' . $theme; $url = 'update.php?action=upgrade-theme&theme=' . urlencode( $theme ); $upgrader = new Theme_Upgrader( new Theme_Upgrader_Skin( compact( 'title', 'nonce', 'url', 'theme' ) ) ); $upgrader->upgrade( $theme ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'update-selected-themes' === $action ) { if ( ! current_user_can( 'update_themes' ) ) { wp_die( __( 'Sorry, you are not allowed to update themes for this site.' ) ); } check_admin_referer( 'bulk-update-themes' ); if ( isset( $_GET['themes'] ) ) { $themes = explode( ',', stripslashes( $_GET['themes'] ) ); } elseif ( isset( $_POST['checked'] ) ) { $themes = (array) $_POST['checked']; } else { $themes = array(); } $themes = array_map( 'urldecode', $themes ); $url = 'update.php?action=update-selected-themes&themes=' . urlencode( implode( ',', $themes ) ); $nonce = 'bulk-update-themes'; wp_enqueue_script( 'updates' ); iframe_header(); $upgrader = new Theme_Upgrader( new Bulk_Theme_Upgrader_Skin( compact( 'nonce', 'url' ) ) ); $upgrader->bulk_upgrade( $themes ); iframe_footer(); } elseif ( 'install-theme' === $action ) { if ( ! current_user_can( 'install_themes' ) ) { wp_die( __( 'Sorry, you are not allowed to install themes on this site.' ) ); } require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; // For themes_api(). check_admin_referer( 'install-theme_' . $theme ); $api = themes_api( 'theme_information', array( 'slug' => $theme, 'fields' => array( 'sections' => false, 'tags' => false, ), ) ); // Save on a bit of bandwidth. if ( is_wp_error( $api ) ) { wp_die( $api ); } // Used in the HTML title tag. $title = __( 'Install Themes' ); $parent_file = 'themes.php'; $submenu_file = 'themes.php'; require_once ABSPATH . 'wp-admin/admin-header.php'; /* translators: %s: Theme name and version. */ $title = sprintf( __( 'Installing Theme: %s' ), $api->name . ' ' . $api->version ); $nonce = 'install-theme_' . $theme; $url = 'update.php?action=install-theme&theme=' . urlencode( $theme ); $type = 'web'; // Install theme type, From Web or an Upload. $upgrader = new Theme_Upgrader( new Theme_Installer_Skin( compact( 'title', 'url', 'nonce', 'plugin', 'api' ) ) ); $upgrader->install( $api->download_link ); require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'upload-theme' === $action ) { if ( ! current_user_can( 'upload_themes' ) ) { wp_die( __( 'Sorry, you are not allowed to install themes on this site.' ) ); } check_admin_referer( 'theme-upload' ); if ( isset( $_FILES['themezip']['name'] ) && ! str_ends_with( strtolower( $_FILES['themezip']['name'] ), '.zip' ) ) { wp_die( __( 'Only .zip archives may be uploaded.' ) ); } $file_upload = new File_Upload_Upgrader( 'themezip', 'package' ); // Used in the HTML title tag. $title = __( 'Upload Theme' ); $parent_file = 'themes.php'; $submenu_file = 'theme-install.php'; require_once ABSPATH . 'wp-admin/admin-header.php'; /* translators: %s: File name. */ $title = sprintf( __( 'Installing theme from uploaded file: %s' ), esc_html( basename( $file_upload->filename ) ) ); $nonce = 'theme-upload'; $url = add_query_arg( array( 'package' => $file_upload->id ), 'update.php?action=upload-theme' ); $type = 'upload'; // Install theme type, From Web or an Upload. $overwrite = isset( $_GET['overwrite'] ) ? sanitize_text_field( $_GET['overwrite'] ) : ''; $overwrite = in_array( $overwrite, array( 'update-theme', 'downgrade-theme' ), true ) ? $overwrite : ''; $upgrader = new Theme_Upgrader( new Theme_Installer_Skin( compact( 'type', 'title', 'nonce', 'url', 'overwrite' ) ) ); $result = $upgrader->install( $file_upload->package, array( 'overwrite_package' => $overwrite ) ); if ( $result || is_wp_error( $result ) ) { $file_upload->cleanup(); } require_once ABSPATH . 'wp-admin/admin-footer.php'; } elseif ( 'upload-theme-cancel-overwrite' === $action ) { if ( ! current_user_can( 'upload_themes' ) ) { wp_die( __( 'Sorry, you are not allowed to install themes on this site.' ) ); } check_admin_referer( 'theme-upload-cancel-overwrite' ); // Make sure the attachment still exists, or File_Upload_Upgrader will call wp_die() // that shows a generic "Please select a file" error. if ( ! empty( $_GET['package'] ) ) { $attachment_id = (int) $_GET['package']; if ( get_post( $attachment_id ) ) { $file_upload = new File_Upload_Upgrader( 'themezip', 'package' ); $file_upload->cleanup(); } } wp_redirect( self_admin_url( 'theme-install.php' ) ); exit; } else { /** * Fires when a custom plugin or theme update request is received. * * The dynamic portion of the hook name, `$action`, refers to the action * provided in the request for wp-admin/update.php. Can be used to * provide custom update functionality for themes and plugins. * * @since 2.8.0 */ do_action( "update-custom_{$action}" ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores } }