Как отключить Gutenberg в WordPress без плагинов, виджеты и редактор - Студия MetaDiv (МетаДив)

Как отключить Gutenberg в WordPress без плагинов, виджеты и редактор

Возвращаем настройку виджетов по сайту к классическому стилю, т.е. отключаем Гутенберг (визуальный блочный режим).

// Отключаем Гутенберг в настройке Виджетов
add_filter( 'gutenberg_use_widgets_block_editor', '__return_false', 100 );
add_filter( 'use_widgets_block_editor', '__return_false' );

Вставьте следующий код в файле темы functions.php или куда-либо еще

Как полностью отключить редактор блоков Gutenberg (через код)

Отключить редактор позволяет хук use_block_editor_for_post_type.

Вставьте следующий код в файле темы functions.php или куда-либо еще:

## Отключает Гутенберг (новый редактор блоков в WordPress).
## ver: 1.2
if( 'disable_gutenberg' ){
	remove_theme_support( 'core-block-patterns' ); // WP 5.5

	add_filter( 'use_block_editor_for_post_type', '__return_false', 100 );

	// отключим подключение базовых css стилей для блоков
	// ВАЖНО! когда выйдут виджеты на блоках или что-то еще, эту строку нужно будет комментировать
	remove_action( 'wp_enqueue_scripts', 'wp_common_block_scripts_and_styles' );

	// Move the Privacy Policy help notice back under the title field.
	add_action( 'admin_init', function(){
		remove_action( 'admin_notices', [ 'WP_Privacy_Policy_Content', 'notice' ] );
		add_action( 'edit_form_after_title', [ 'WP_Privacy_Policy_Content', 'notice' ] );
	} );
}

Как отключить Gutenberg для произвольных типов записей (WordPress)

Бывают случаи, когда тип записи нуждается в простом интерфейсе без редактора блоков, тогда возникает необходимость отключить редактор Gutenberg для пользовательского типа записи.

Пример ниже показывает, как отключить Gutenberg для указанных типов записей, оставив при работоспособность для всех остальных типов записей.

Этот PHP сниппет отключит редактор блоков для двух типов записей: bookmovie.

# Отключает Gutenberg для произвольных типов записей
add_filter( 'use_block_editor_for_post_type', 'my_disable_gutenberg', 10, 2 );
function my_disable_gutenberg( $current_status, $post_type ) {
	$disabled_post_types = [ 'book', 'movie' ];
	return ! in_array( $post_type, $disabled_post_types, true );
}

Код можно использовать в файле functions.php или плагине.