Как вернуть старый редактор WordPress (отключаем Гутенберг через код или плагин)
В версии WordPress 5.0, наконец, в ядре появился долгожданный новый редактор контента записи «редактор блоков», известный также как Гутенберг (Gutenderg). Он полностью изменил страницу редактирования записи и принцип написания контента. На некоторых сайтах такие кардинальные изменения могут сломать текущий функционал, поэтому там этот редактор нужно будет отключить. В этой короткой заметке разберемся как в WordPress вернуть старый редактор жестко в коде или мягко через плагин.
Отключаем Gutenberg кодом
Отключить редактор позволяет хук use_block_editor_for_post_type.
Вставьте следующий код в файле темы functions.php
или куда-либо еще:
## Отключает новый редактор блоков в WordPress (Гутенберг). ## ver: 1.0 if( 'disable_gutenberg' ){ 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' ] ); } ); }
Включить/отключить Гутенберг для отдельной записи (поста), можно через хук use_block_editor_for_post.
Также, Блочный редактор можно отключить через метабокс, если передать параметр __block_editor_compatible_meta_box = false при регистрации метабокса, подробнее смотрите в описании add_meta_box().
Отключаем Gutenberg плагином «Classic Editor»
Classic Editor — плагин отключает редактор блоков Гутенберг.
Если нужно оставить возможность использовать Гутенберг на сайте (иметь возможность одни статьи править в новом редакторе, а другие в классическом), то жесткое отключение Гутенберга - не вариант. В этом случае разработчики WordPress рекомендуют установить плагин «Classic Editor».
После установки и активации плагина, нужно зайти на страницу настроек: Настройки > Написание и выбрать какой редактор будет использоваться по умолчанию, а также дать/запретить возможность выбора редактора пользователям.
Если оставить выбор редактора, то в таблице записей мы увидим следующие ссылки:
Коротко о возможностях плагина:
- Администраторы могут выбрать редактор по умолчанию для всех пользователей.
- Администраторы могут разрешить пользователям изменять свой редактор по умолчанию.
- Когда редактор разрешен, пользователи могут выбрать, какой редактор использовать для каждой записи.
- Каждая запись открывается в последнем использованном редакторе, независимо от того, кто его редактировал последним (нужно для сохранения совместимости при редактировании).
Принцип работы плагина основан на хуке use_block_editor_for_post_type.
А каким образом прикрутить новый редактор к произвольным типам записи? При регистрации в support стоит editor, но редактор отображается старый.
Может у вас стоит плагин, который отключает Гутенберг или REST API?
Вариант 1:
Чтобы Гутен работал, у типа записи при регистрации нужно установить:
Смотри функцию use_block_editor_for_post_type().
Вариант 2:
Или можно через хук use_block_editor_for_post_type включить его для типа записи:
Никто не подскажет адекватную документацию для разработке свои блоков для гетунберга.
Думаю еще рано пока, пока переведут, пока адаптирую, пока потестят...
Carbon Fields вышел третий, с поддержкой Гутенберг, как раз там можно блоки создавать
А вообще очень бы хотелось понять как с этим редактором взаимодейтвовать при разработке.
Например, интересно, как создавать свои типы блоков и их настраивать.
В целом официальной оказалось более менее достаточно. Остальное можно в исходниках посмотреть (типы, методы и тд.). Попробовал парочку простеньких написать, в целом пока нормально.
Привет, подскажи плз как на отдельной page странице отключить главный заголовок Гутенберга, или переместить его вниз при выводе, чтобы он шел после слайдера, изображения?
Спасибо за статью, помогло!