Описание allowed_block_types
— Filter
Хук allowed_block_types позволяет изменить список доступных блоков в редакторе Gutenberg. Он срабатывает при загрузке редактора и позволяет разработчикам ограничивать или расширять набор доступных блоков в зависимости от контекста или условий
Примеры использования
Пример ограничения доступных блоков только до абзаца и заголовка:
add_filter('allowed_block_types', function($allowed_blocks) {
return ['core/paragraph', 'core/heading'];
});
В этом примере мы ограничиваем доступные блоки только до абзаца и заголовка
Пример динамического ограничения блоков в зависимости от типа поста:
add_filter('allowed_block_types', function($allowed_blocks, $post) {
if ($post->post_type === 'page') {
return ['core/paragraph', 'core/image'];
}
return $allowed_blocks;
}, 10, 2);
Здесь мы разрешаем только абзац и изображение для страниц, а для других типов постов оставляем все блоки
Пример удаления всех блоков, кроме кастомного блока:
add_filter('allowed_block_types', function($allowed_blocks) {
return ['namespace/custom-block'];
});
В этом примере мы оставляем только кастомный блок и убираем все остальные
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо контролировать доступные блоки в редакторе Gutenberg для повышения удобства редактирования
– Производительность
Хук не должен значительно влиять на производительность, однако стоит следить за тем, чтобы не создавать избыточные проверки
– Предупреждения
Изменения могут повлиять на пользовательский опыт, поэтому важно тщательно продумать, какие блоки следует оставлять или удалять
Альтернативы
Тип: filter
Этот хук позволяет изменять категории блоков, но не их доступность
Используйте его, если хотите изменить организацию блоков, но не ограничивать их количество