array( 'auto-draft' ), 'post_type' => array( 'wp_template', 'wp_template_part' ), 'posts_per_page' => -1, ) ); foreach ( $delete_query->posts as $post ) { wp_delete_post( $post->ID, true ); } // Delete _wp_file_based term. $term = get_term_by( 'name', '_wp_file_based', 'wp_theme' ); if ( $term ) { wp_delete_term( $term->term_id, 'wp_theme' ); } // Delete useless options. delete_option( 'gutenberg_last_synchronize_theme_template_checks' ); delete_option( 'gutenberg_last_synchronize_theme_template-part_checks' ); } // Deletion of the `_wp_file_based` term (in _gutenberg_migrate_remove_fse_drafts) must happen // after its taxonomy (`wp_theme`) is registered. This happens in `gutenberg_register_wp_theme_taxonomy`, // which is hooked into `init` (default priority, i.e. 10). add_action( 'init', '_gutenberg_migrate_database', 20 );