prefix . 'welcomescribe_bookings'; $logs = $wpdb->prefix . 'welcomescribe_logs'; $leads = $wpdb->prefix . 'welcomescribe_leads'; $gaps = $wpdb->prefix . 'welcomescribe_gaps'; $wpdb->query( "DROP TABLE IF EXISTS {$bookings}" ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.DirectDatabaseQuery.SchemaChange, PluginCheck.Security.DirectDB.UnescapedDBParameter -- Fixed plugin table name, dropped on uninstall. $wpdb->query( "DROP TABLE IF EXISTS {$logs}" ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.DirectDatabaseQuery.SchemaChange, PluginCheck.Security.DirectDB.UnescapedDBParameter -- Fixed plugin table name, dropped on uninstall. $wpdb->query( "DROP TABLE IF EXISTS {$leads}" ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.DirectDatabaseQuery.SchemaChange, PluginCheck.Security.DirectDB.UnescapedDBParameter -- Fixed plugin table name, dropped on uninstall. $wpdb->query( "DROP TABLE IF EXISTS {$gaps}" ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.DirectDatabaseQuery.SchemaChange, PluginCheck.Security.DirectDB.UnescapedDBParameter -- Fixed plugin table name, dropped on uninstall. delete_option( 'welcomescribe_settings' ); delete_option( 'welcomescribe_knowledge' ); delete_option( 'welcomescribe_import_state' ); delete_option( 'welcomescribe_booking' ); delete_option( 'welcomescribe_calendar' ); delete_option( 'welcomescribe_ical_errors' ); delete_option( 'welcomescribe_db_version' ); delete_metadata( 'user', 0, 'welcomescribe_dismissed_notices', '', true ); $like_value = $wpdb->esc_like( '_transient_welcomescribe_' ) . '%'; $like_timeout = $wpdb->esc_like( '_transient_timeout_welcomescribe_' ) . '%'; $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->options} WHERE option_name LIKE %s OR option_name LIKE %s", // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared $like_value, $like_timeout ) ); } if ( is_multisite() ) { $welcomescribe_site_ids = get_sites( array( 'fields' => 'ids', 'number' => 0, ) ); foreach ( $welcomescribe_site_ids as $welcomescribe_site_id ) { switch_to_blog( (int) $welcomescribe_site_id ); welcomescribe_uninstall_site(); restore_current_blog(); } } else { welcomescribe_uninstall_site(); }