Включите блоки Гутенберга в тему Wordpress

Можно ли включить настраиваемый блок Гутенберга в тему Wordpress. Так что мне не нужно загружать две отдельные части: тему и плагин с блоком Гутенберга.

Я уже пытался создать подпапку с плагином Gutenberg внутри темы и включить ее в файл functions.php моей темы. Но это не сработало.


person mrtf    schedule 19.04.2019    source источник


Ответы (1)


Я вижу, что вы новый участник; Добро пожаловать!

Следующее должно работать: Поместите PHP, который регистрирует блок, в файл темы functions.php. Вам нужно будет написать функцию, которая подключается к действию init и выполняет следующие действия:

  • использует wp_register_script () для обозначения файла JavaScript, который будет действовать как шаблон для вашего блока;
  • использует register_block_type () для регистрации вашего блока.

Этот файл шаблона, который вы поместите в тему вместе с functions.php или в подпапку, будет использовать JSX для форматирования вашего блока.

Конечно, детали того, что вы кодируете, зависят от того, что вы хотите, чтобы ваш блок делал. Я настоятельно рекомендую вам ознакомиться с официальным Руководством по блокам Гутенберга из WordPress.

person nydame    schedule 19.04.2019
comment
Спасибо за быстрый ответ! Это именно то, что я сделал. Но я исключил эти две функции, которые вы упомянули в другом файле. В тему functions.php я добавил строку: include 'gutenberg / index.php'; Если я загружу только настраиваемый блок Гутенберга в качестве плагина, все будет работать нормально. Значит, блок Гутенберга закодирован правильно. - person mrtf; 20.04.2019
comment
Хммм, придется самому попробовать. Напишу, если узнаю что-нибудь полезное! - person nydame; 23.04.2019
comment
@mrtf Вы когда-нибудь находили решение этой проблемы? - person David A. French; 13.09.2019
comment
@ DavidA.French Нет, к сожалению, нет. Я очень благодарен, если вы могли бы помочь мне, как только нашли решение. - person mrtf; 15.09.2019
comment
@mrtf Конечно. Я действительно нашел исправление. Посмотрите этот пулреквест в моем проекте, чтобы узнать, как мне помогли другие: github.com / jcklpe / common-wp / pull / 1 - person David A. French; 26.09.2019