get_col( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE post_type = %s", $akram_type ) ); foreach ( $akram_ids as $akram_id ) { wp_delete_post( (int) $akram_id, true ); } } // Pages migrated from Elementor get Elementor's edit mode back (their Elementor data was never changed). // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching $akram_migrated = $wpdb->get_col( $wpdb->prepare( "SELECT post_id FROM {$wpdb->postmeta} WHERE meta_key = %s", '_akram_elementor_edit_mode' ) ); foreach ( $akram_migrated as $akram_id ) { update_post_meta( (int) $akram_id, '_elementor_edit_mode', 'builder' ); } $akram_meta = array( '_akram_mode', '_akram_data', '_akram_out', '_akram_css', '_akram_css_file', '_akram_draft', '_akram_mega', '_akram_type', '_akram_conditions', '_akram_settings', '_akram_preview', '_akram_elementor_edit_mode', ); foreach ( $akram_meta as $akram_key ) { delete_post_meta_by_key( $akram_key ); } $akram_options = array( 'akram_settings', 'akram_globals', 'akram_global_css', 'akram_global_fonts', 'akram_global_ver', 'akram_db_version', 'akram_version', 'akram_needs_rebuild', 'akram_visitor_rules', ); foreach ( $akram_options as $akram_opt ) { delete_option( $akram_opt ); } delete_metadata( 'user', 0, 'akram_onboarded', '', true ); delete_transient( 'akram_tb_index' ); foreach ( array( 'administrator', 'editor' ) as $akram_role ) { $r = get_role( $akram_role ); if ( $r ) { $r->remove_cap( 'akram_edit' ); $r->remove_cap( 'akram_manage' ); } } $akram_upload = wp_upload_dir( null, false ); $akram_dir = trailingslashit( $akram_upload['basedir'] ) . 'akram'; if ( is_dir( $akram_dir ) ) { require_once ABSPATH . 'wp-admin/includes/file.php'; WP_Filesystem(); global $wp_filesystem; if ( $wp_filesystem ) { $wp_filesystem->rmdir( $akram_dir, true ); } } wp_clear_scheduled_hook( 'akram_daily' ); wp_clear_scheduled_hook( 'akram_refresh_instagram' ); } } if ( is_multisite() ) { foreach ( get_sites( array( 'fields' => 'ids', 'number' => 0, ) ) as $akram_site ) { switch_to_blog( (int) $akram_site ); akram_uninstall_site(); restore_current_blog(); } } else { akram_uninstall_site(); }