Как подготовить пользовательский шаблон
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
Пользовательский шаблон — это готовая заготовка сайта или страницы, которую можно добавить в мастер создания сайтов. Мастер — это экран, на котором пользователь Битрикс24 выбирает оформление при создании нового сайта или страницы. Свой шаблон появляется в этом списке после того, как приложение его зарегистрирует.
Шаблон создают на основе уже готового сайта или страницы из раздела Сайты. Сначала сайт экспортируют — выгружают его структуру в набор данных, который можно сохранить и передать дальше. Затем этот набор регистрируют методами landing.demos.* из приложения Битрикс24.
Scope:
landingКто может вызывать методы раздела: пользователь с правом Просмотр в разделе Сайты
Когда использовать пользовательский шаблон
Используйте пользовательский шаблон, если нужно:
- добавить собственный шаблон в мастер создания сайтов
- распространять готовый сайт или страницу через приложение
- повторно использовать один и тот же набор страниц, блоков и настроек
Если шаблон нужно только установить в одном Битрикс24 без повторного использования, достаточно создать и настроить сайт или страницу обычным способом.
Если шаблон распространяется как приложение с сайтом, смотрите статьи Установка шаблонов сайтов и Требования к сайтам перед публикацией.
Как устроен пользовательский шаблон
Шаблон собирается из трех частей, связанных между собой:
- исходный сайт или страница — основа шаблона, ее готовят в разделе Сайты
- экспорт — структура сайта в виде данных, которую создает метод landing.site.fullExport
- зарегистрированный шаблон — запись, которая появляется в мастере после вызова landing.demos.register
Методы раздела отвечают за отдельные шаги работы с шаблоном:
- landing.demos.register — регистрирует шаблон в мастере создания сайта и страницы
- landing.demos.getList — возвращает зарегистрированные шаблоны и позволяет проверить результат регистрации. Если метод вызван из приложения, в ответ попадают только шаблоны этого приложения
- landing.demos.getSiteList — возвращает шаблоны сайтов, которые доступны в мастере для выбранного типа сайта. В список попадают и встроенные шаблоны Битрикс24, и подходящие шаблоны, которые вы зарегистрировали. Например, для типа
storeметод вернет шаблоны интернет-магазинов - landing.demos.getPageList — то же самое, но для шаблонов отдельных страниц
- landing.demos.unregister — удаляет зарегистрированный шаблон
Как подготовить шаблон
Перед экспортом проверьте сам сайт:
- страницы связаны между собой корректно
- используются нужные блоки и темы
- изображения и внешние ресурсы доступны по рабочим URL
- название, описание и preview-данные подготовлены для шаблона. Preview-данные — это картинки предпросмотра, по которым шаблон узнают в списке мастера
Если сайт многостраничный, используйте одну тему для всех страниц. Это помогает сохранить единый внешний вид после установки шаблона.
Как зарегистрировать шаблон
Порядок работы такой:
- Создайте сайт или страницу, которые станут основой шаблона
- Экспортируйте сайт методом landing.site.fullExport — он вернет структуру сайта в виде данных
- Сохраните результат экспорта на стороне приложения
- При установке приложения передайте сохраненные данные в landing.demos.register. Обычно результат
fullExportпередают без ручной перестройки структуры - Проверьте результат методом landing.demos.getList: шаблон должен появиться в списке и в мастере создания сайта или страницы
Что возвращают методы:
- landing.demos.register — массив числовых идентификаторов шаблонов, которые он создал или обновил
- landing.demos.getList — список шаблонов. У каждого есть внешний код
XML_ID, названиеTITLE, типTYPEи другие поля. Выборку можно сузить параметрамиselect,filter,order,limitиoffset
Что учитывать перед регистрацией
Тип шаблона. В данных шаблона есть поля type и tpl_type. Поле type задает назначение шаблона: page — страницы, store — магазины, knowledge — базы знаний, group — группы, mainpage — главные страницы. Поле tpl_type задает место шаблона в мастере: S — шаблон сайта, P — шаблон страницы. Проверьте оба поля в структуре, которую передаете в landing.demos.register.
Состав экспорта. Обычно в регистрацию передают полный результат landing.site.fullExport. Если структуру меняют вручную, проверьте, что в ней сохранены обязательные поля и карта страниц items. Если не заполнить обязательное поле code с внешним кодом шаблона, метод вернет ошибку BX_EMPTY_REQUIRED.
Проверка безопасности. Перед регистрацией Битрикс24 проверяет содержимое шаблона. Если в нем найден небезопасный код, метод вернет ошибку CONTENT_IS_BAD, и шаблон не зарегистрируется.
Preview-данные. Подготовьте preview, preview2x, preview3x и preview_url, если шаблон должен отображаться в списке и в предпросмотре.
Внешний код шаблона. Чтобы удалить шаблон, нужен его внешний код. Получите его так:
- при регистрации внешний код задают в поле
codeметода landing.demos.register — он сохраняется какXML_IDшаблона - если код не сохранили, его можно получить методом landing.demos.getList в поле
XML_ID - передайте этот код в параметр
codeметода landing.demos.unregister
Если шаблона с таким кодом нет, unregister вернет false. Если шаблон сайта и шаблон страницы зарегистрированы с одним и тем же кодом, удаление может затронуть обе связанные записи.
URL предпросмотра
preview_url задает страницу предпросмотра шаблона в мастере. Этот URL можно передать при экспорте сайта через landing.site.fullExport. Затем его используют при регистрации шаблона.
Для preview_url обычно используют опубликованную страницу, которая показывает шаблон в готовом виде. Для многостраничного сайта достаточно главной страницы.
Следите, чтобы ссылка предпросмотра оставалась доступной. Иначе в мастере не откроется страница предпросмотра.
Изображения и внешние ресурсы
При экспорте сайта изображения и другие внешние ресурсы могут сохраниться как абсолютные ссылки. После установки шаблона они будут загружаться с исходного адреса. Это будет продолжаться, пока пользователь не заменит их своими файлами.
Если шаблон распространяется в другие Битрикс24, заранее проверьте:
- что все URL доступны извне
- что изображения не зависят от временного хранилища
- что preview-картинки не будут удалены
Локализация шаблона
Название и описание шаблона можно локализовать при регистрации. Для этого в landing.demos.register используют параметры lang и lang_original.
Если шаблон должен отображаться в Битрикс24 с разными языками, подготовьте локализационный массив заранее. Подробности смотрите в статье Локализация шаблона.