Как зарегистрировать шаблон в [НОВОМ] редакторе сайта WordPress через плагин

Вопрос или проблема

Я пытаюсь добавить новый шаблон в редакторе сайта WordPress, как это как это

но не могу сделать это с помощью моего пользовательского плагина.

Я нашел фильтр для регистрации пользовательского шаблона

add_filter( 'default_template_types', 'register_template_type' );

function register_template_type( $templates ) {
            $templates['help-us'] = array(
                'title'       => _x( 'Страница: Помоги нам', 'Имя шаблона' ),
                'description' => __( 'Отображает шаблон Помоги нам' ),
            );

            return $templates;
}

после добавления этого кода я понял, что добавив файл в директорию шаблонов темы help-us.html, я смог зарегистрировать и отобразить свой пользовательский шаблон.

введите описание изображения здесь

Мой вопрос в том, как мы можем сделать это через плагин? Есть ли способ добавить пользовательский шаблон через папку плагина? Как это делается в случае с WooCommerce и другими плагинами. Я не смог найти для этого хук.

Спасибо

С уважением

Сайед Али Ахмед

Два лучших способа сделать это: (1) использовать плагин Create Block Theme или (2) дочернюю тему. Зачем усложнять это новым плагином?

В дочерней теме создайте папку templates, и в ней добавьте файл custom-template.html.

Вы также можете добавить новый шаблон, используя кнопку Плюс + сверху, чтобы добавить новый шаблон и экспортировать его либо как новую тему, либо как дочернюю тему с помощью Create Block Theme

Создать новый шаблон

В WordPress 6.7 была введена новая функция, известная как register_block_template, которая поможет нам решить наши проблемы.

Ответ или решение

Для успешной регистрации пользовательского шаблона в новом редакторе WordPress через плагин, вам необходимо использовать хук register_block_template, который был внедрён в WordPress 6.7. Это позволяет вам регистрировать ваши шаблоны непосредственно через папку вашего плагина, подобно тому, как это делается в WooCommerce и других плагинах.

Чтобы зарегистрировать новый шаблон с помощью вашего плагина, следуйте этим шагам:

Шаг 1: Определите структуру вашего плагина

Рекомендуется создать папку для вашего плагина в директории wp-content/plugins. Например, создайте папку с названием my-custom-templates.

Шаг 2: Создайте основной файл плагина

Создайте файл, например, my-custom-templates.php в папке вашего плагина и добавьте следующий код для регистрации вашего плагина:

<?php
/**
 * Plugin Name: My Custom Templates
 * Description: Регистрация пользовательских шаблонов для редактора WordPress
 * Version: 1.0
 * Author: Ваше Имя
 */

function my_custom_templates_register() {
    // Регистрация нового шаблона
    $templates = [
        'help-us' => [
            'title' => _x('Page: Help Us', 'Template Name'),
            'description' => __('Displays Help Us template'),
            'file' => 'templates/help-us.html', // Укажите путь к файлу вашего шаблона
        ],
    ];

    // Используем register_block_template для добавления шаблона
    foreach ($templates as $key => $template) {
        register_block_template($key, $template);
    }
}
add_action('init', 'my_custom_templates_register');
?>

Шаг 3: Создайте директорию шаблонов

Внутри папки вашего плагина создайте подкаталог templates и поместите в него ваш файл шаблона, например, help-us.html.

Шаг 4: Активируйте плагин

Перейдите в раздел "Плагины" в админ-панели WordPress и активируйте ваш новый плагин "My Custom Templates".

Шаг 5: Проверьте регистрацию шаблона

После активации плагина зайдите в редактор страниц и проверьте наличие нового шаблона "Help Us". Он должен отображаться в списке доступных шаблонов.

Заключение

Использование функции register_block_template в вашем плагине является наиболее эффективным способом регистрации пользовательских шаблонов. Это позволяет избежать создания дочерней темы или использования внешних инструментов, обеспечивая интеграцию шаблонов прямо в ваш плагин. Если у вас возникнут вопросы или потребуется дополнительная помощь, не стесняйтесь обращаться за поддержкой в сообщество WordPress.

Следуя этим шагам, вы сможете не только зарегистрировать шаблон, но и расширить функциональность вашего сайта WordPress, предлагая пользователям уникальные опции при создании страниц.

Оцените материал
Добавить комментарий

Капча загружается...