WP_Recovery_Mode::handle_exit_recovery_mode()

In this article

Handles a request to exit Recovery Mode.

Source

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;
}

Changelog

VersionDescription
5.2.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.