Редактор Gutenberg стал стандартом в WordPress начиная с версии 5.0, предлагая блочный подход к созданию контента. Несмотря на преимущества, многие разработчики и пользователи предпочитают классический редактор или более гибкие решения. В этой статье мы подробно разберём, как отключить редактор Gutenberg в WordPress, чтобы использовать классический редактор или другие конструкторы страниц, и рассмотрим несколько способов с примерами кода и плагинами.
Почему может потребоваться отключить Gutenberg
Редактор Gutenberg кардинально изменил процесс создания контента в WordPress, но не всегда он подходит под конкретные задачи:
- Совместимость с плагинами и темами. Некоторые плагины и темы могут некорректно работать с Gutenberg.
- Привычка и удобство. Пользователи, привыкшие к классическому редактору TinyMCE, могут испытывать дискомфорт и снижение производительности.
- Особые требования к контенту. При создании специфических шаблонов нужно использовать классический редактор.
В таких случаях отключение Gutenberg становится разумным решением.
Способ 1. Отключение Gutenberg с помощью кода в functions.php
Самый простой и быстрый способ — добавить в файл functions.php вашей темы или в плагин для кастомных функций следующий код:
function wplike_disable_gutenberg() {
return false;
}
add_filter('use_block_editor_for_post', 'wplike_disable_gutenberg', 10, 2);
Этот фильтр полностью отключает блоковый редактор для всех типов записей, возвращая классический редактор.
Если нужно отключить Gutenberg только для некоторых типов постов, например, для записей (post), то можно сделать так:
function wplike_disable_gutenberg_for_posts($use_block_editor, $post) {
if ($post->post_type === 'post') {
return false;
}
return $use_block_editor;
}
add_filter('use_block_editor_for_post', 'wplike_disable_gutenberg_for_posts', 10, 2);
Этот код отключит Gutenberg только для записей, а для страниц и других постов редактор останется.
Отключение Gutenberg для конкретных ролей пользователей
Если вы хотите, чтобы редактор Gutenberg отключался только для определённых ролей, например для редакторов, используйте такой пример:
function wplike_disable_gutenberg_for_roles($use_block_editor, $post) {
if (current_user_can('editor')) {
return false;
}
return $use_block_editor;
}
add_filter('use_block_editor_for_post', 'wplike_disable_gutenberg_for_roles', 10, 2);
Это даёт гибкий контроль над редактором в зависимости от роли пользователя.
Способ 2. Использование плагинов для отключения Gutenberg
Если вы не хотите править код напрямую, можно использовать плагины, которые быстро и безопасно отключают Gutenberg.
- Classic Editor — официальный плагин от разработчиков WordPress, восстанавливающий классический редактор. Он сохраняет поддержку Gutenberg, но по умолчанию отключает его.
- Disable Gutenberg — плагин с расширенными настройками отключения редактора для конкретных ролей, типов записей и даже для отдельных пользователей.
- Clearfy Pro — премиум-плагин с широким набором оптимизаций, включая возможность отключить Gutenberg и ряд других ненужных функций WordPress.
Установка плагина Classic Editor:
- Перейдите в админку WordPress > Плагины > Добавить новый.
- В поиске введите «Classic Editor».
- Нажмите «Установить», затем «Активировать».
Плагин автоматически отключит Gutenberg и вернёт классический редактор.
Способ 3. Отключение Gutenberg для виджетов и кастомных типов постов
Gutenberg также влияет на редактор виджетов и на кастомные типы записей. Чтобы отключить его там, используйте дополнительные фильтры:
add_filter('use_widgets_block_editor', '__return_false');
function wplike_disable_gutenberg_for_cpt($use_block_editor, $post) {
$excluded_post_types = array('your_custom_post_type');
if (in_array($post->post_type, $excluded_post_types)) {
return false;
}
return $use_block_editor;
}
add_filter('use_block_editor_for_post', 'wplike_disable_gutenberg_for_cpt', 10, 2);
Замените your_custom_post_type на нужный тип записи, чтобы вернуть классический редактор.
Отключение Gutenberg на страницах редактирования шаблонов
Если вы используете темы, в которых есть собственные шаблоны страниц с особыми полями, иногда Gutenberg мешает их работе. Вы можете отключить редактор для этих страниц по ID:
function wplike_disable_gutenberg_by_id($use_block_editor, $post) {
$excluded_ids = array(12, 34); // ID страниц
if (in_array($post->ID, $excluded_ids)) {
return false;
}
return $use_block_editor;
}
add_filter('use_block_editor_for_post', 'wplike_disable_gutenberg_by_id', 10, 2);
Советы по плавному переходу и комбинированию редакторов
Если вы хотите сохранить возможность использовать Gutenberg для новых записей, но отключить его для существующих или определённых пользователей, комбинируйте подходы. Например, используйте плагин Classic Editor с настройками, а в functions.php добавьте фильтры для исключения Gutenberg только на нужных типах постов.
Также стоит проверить совместимость с плагинами визуальных конструкторов, такими как Elementor, WPBakery и другие. Иногда их использование вместе с Gutenberg даёт неожиданный конфликт, и отключение блочного редактора упрощает разработку.
Заключение
Отключение редактора Gutenberg — частая задача среди разработчиков и пользователей WordPress, особенно на этапах миграции или при работе с кастомными решениями. В этой статье вы узнали три основных способа отключения Gutenberg: через код, через плагины и с помощью фильтров для конкретных условий.
Если хотите попробовать плагин с расширенными возможностями оптимизации, рекомендую обратить внимание на Clearfy Pro. Он поможет не только отключить Gutenberg, но и повысить безопасность и производительность сайта.