prefix . 'r2clouder_jobs' ); // A table name cannot be passed as a prepared value, and the name is built // from the trusted $wpdb prefix rather than from any request data. // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.DirectDatabaseQuery.SchemaChange, WordPress.DB.PreparedSQL.InterpolatedNotPrepared $wpdb->query( "DROP TABLE IF EXISTS `{$table}`" ); delete_option( 'r2clouder_settings' ); delete_option( 'r2clouder_credentials' ); delete_option( 'r2clouder_connections' ); delete_option( 'r2clouder_migration' ); delete_option( 'r2clouder_onboarding_step' ); delete_option( 'r2clouder_onboarding_complete' ); delete_option( 'r2clouder_version' ); delete_option( 'r2clouder_db_version' ); } if ( is_multisite() ) { $r2clouder_site_ids = get_sites( array( 'fields' => 'ids', 'number' => 0, 'update_site_meta_cache' => false, ) ); foreach ( $r2clouder_site_ids as $r2clouder_site_id ) { switch_to_blog( (int) $r2clouder_site_id ); r2clouder_uninstall_site(); restore_current_blog(); } unset( $r2clouder_site_ids, $r2clouder_site_id ); } else { r2clouder_uninstall_site(); }