WP_Recovery_Mode::handle_exit_recovery_mode
Handles a request to exit Recovery Mode.
Method of the class: WP_Recovery_Mode{}
No Hooks.
Returns
null. Nothing (null).
Usage
$WP_Recovery_Mode = new WP_Recovery_Mode(); $WP_Recovery_Mode->handle_exit_recovery_mode();
Changelog
| Since 5.2.0 | Introduced. |
WP_Recovery_Mode::handle_exit_recovery_mode() WP Recovery Mode::handle exit recovery mode code WP 6.9.1
public function handle_exit_recovery_mode() {
$redirect_to = wp_get_referer();
// Safety check in case referrer returns false.
if ( ! $redirect_to ) {
$redirect_to = is_user_logged_in() ? admin_url() : home_url();
}
if ( ! $this->is_active() ) {
wp_safe_redirect( $redirect_to );
die;
}
if ( ! isset( $_GET['action'] ) || self::EXIT_ACTION !== $_GET['action'] ) {
return;
}
if ( ! isset( $_GET['_wpnonce'] ) || ! wp_verify_nonce( $_GET['_wpnonce'], self::EXIT_ACTION ) ) {
wp_die( __( 'Exit recovery mode link expired.' ), 403 );
}
if ( ! $this->exit_recovery_mode() ) {
wp_die( __( 'Failed to exit recovery mode. Please try again later.' ) );
}
wp_safe_redirect( $redirect_to );
die;
}