'quick_faq', 'post_status' => 'any', 'numberposts' => -1, 'fields' => 'ids', ) ); foreach ( $faqs as $faq_id ) { wp_delete_post( $faq_id, true ); } // Delete taxonomy terms. $terms = get_terms( array( 'taxonomy' => 'quick_faq_tax', 'hide_empty' => false, 'fields' => 'ids', ) ); if ( ! is_wp_error( $terms ) ) { foreach ( $terms as $term_id ) { wp_delete_term( $term_id, 'quick_faq_tax' ); } } // Drop the analytics table. global $wpdb; $table = $wpdb->prefix . 'accordion_faq_events'; // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.SchemaChange -- dropping the plugin's own custom table on uninstall has no WordPress API alternative. $wpdb->query( $wpdb->prepare( 'DROP TABLE IF EXISTS %i', $table ) ); // Clear any cached analytics aggregates for this site. wp_cache_delete( 'last_changed', 'accordion_faq_analytics' ); } if ( is_multisite() ) { $accordion_faq_site_ids = get_sites( array( 'fields' => 'ids' ) ); foreach ( $accordion_faq_site_ids as $accordion_faq_site_id ) { switch_to_blog( $accordion_faq_site_id ); accordion_faq_uninstall_site(); restore_current_blog(); } } else { accordion_faq_uninstall_site(); }