Как удалить ненужные элементы редактора Gutenberg в WordPress

Диагностика: зачем и когда нужно удалять блоки Gutenberg

Редактор Gutenberg в WordPress предлагает множество блоков для создания контента. Однако не все они нужны на конкретном сайте — лишние блоки могут путать пользователей, замедлять загрузку редактора и усложнять интерфейс. Часто требуется убрать стандартные блоки или сторонние, чтобы ограничить выбор или повысить удобство.

Проверьте текущий набор блоков в редакторе, создавая новую запись и открывая список доступных блоков (кнопка “+ Добавить блок”). Если среди них есть блоки, которые не должны использоваться, можно их отключить.

Как удалить блоки Gutenberg через functions.php

Нативный способ — использовать действие allowed_block_types_all. Фильтр позволяет задать точный список разрешённых блоков в редакторе для всех пользователей или для конкретных ролей.

Пример: отключение стандартных блоков, разрешая только параграф, заголовок и изображение

add_filter('allowed_block_types_all', function($allowed_blocks, $editor_context) {
    // Проверяем, что мы в редакторе записи или страницы
    if ($editor_context->post) {
        return [
            'core/paragraph',
            'core/heading',
            'core/image'
        ];
    }
    return $allowed_blocks;
}, 10, 2);

Этот код помещаем в functions.php активной темы или в плагин для кастомных функций.

Удаление блоков сторонних плагинов

Чтобы убрать блоки, добавленные плагинами, нужно знать их имена. Для этого откройте список блоков в редакторе, наведите на блок и в инструментах разработчика посмотрите атрибут data-type. Например, блок плагина может называться plugin/block-name. Добавьте его в массив разрешённых или исключите.

Удаление панелей и кнопок из панели инструментов Gutenberg

Иногда нужно убрать не блоки, а элементы интерфейса редактора — например, панель форматирования или кнопки.

Для этого используют JavaScript с хуком enqueue_block_editor_assets:

add_action('enqueue_block_editor_assets', function() {
    wp_add_inline_script('wp-blocks', "
        wp.domReady(() => {
            // Скрыть панель форматирования текста
            const toolbar = document.querySelector('.edit-post-header-toolbar');
            if (toolbar) {
                toolbar.style.display = 'none';
            }
        });
    ");
});

Такой подход требует точной настройки селекторов, которые могут изменяться в новых версиях WordPress.

Проверка результата

  • Откройте страницу создания или редактирования записи.
  • Нажмите кнопку добавления блока.
  • Убедитесь, что в списке нет удалённых блоков.
  • Проверьте, что редактор работает без ошибок в консоли браузера.

Частые ошибки и их исправление

  • Код не работает вообще: убедитесь, что код добавлен в файл functions.php активной темы или в плагин, и что синтаксис правильный.
  • Удаление блоков не происходит: проверьте, что фильтр применён с параметрами (10, 2) — без второго аргумента $editor_context список может не фильтроваться корректно.
  • JavaScript для удаления панелей не срабатывает: проверьте правильность селектора и загрузку скрипта в редакторе, убедитесь, что хук enqueue_block_editor_assets используется.
  • Блоки появляются снова после обновления WordPress: стандартные блоки могут изменяться, проверяйте актуальность имён блоков.

Практические советы по безопасности и производительности

  • Не удаляйте блоки, которые могут понадобиться для SEO или важных функций сайта.
  • Используйте кеширование и минимизацию JS, чтобы не замедлять редактор.
  • Тестируйте изменения на тестовом сайте, чтобы избежать проблем с совместимостью плагинов.

Сравнение способов удаления блоков Gutenberg

МетодПлюсыМинусы
Фильтр allowed_block_types_allЧистый PHP, легко поддерживать, без JSТребует точных имён блоков, не удаляет UI элементы
JavaScript через enqueue_block_editor_assetsУдаляет UI элементы, гибкоЗависит от структуры DOM, может ломаться после обновлений

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Решение проблемы разных размеров картинок в WordPress: практическое руководство
09.12.2025
Как автоматизировать обновление transient в WordPress: практическое руководство
15.03.2026
Как создать собственный шорткод в WordPress: подробное руководство
05.11.2025
Как создать динамический шорткод с параметрами в WordPress
29.01.2026
Как создать автоматическое отправление email в WordPress с примерами кода
11.01.2026
×
WPShop
партнерка без «но»!

До 3225₽ за каждую продажу

Подключиться к игре