Skip to content
PageBuilder
PageBuilder
Визуальный конструктор секций для MODX 3: черновик и публикация без перезаписи content ресурса
  • MODX 3
  • PHP 8.2
  • Vue 3
  1. Компоненты
  2. PageBuilder
  3. Редактор и менеджер
  4. Панель управления

Панель управления PageBuilder

Компоненты → PageBuilder (SectionTypesManager.vue). Право pagebuilder_manage_types нужно для вкладки Blocks. Остальные вкладки панели управления доступны по стандартным правам менеджера.

Вкладка Blocks есть в Free. Реестр UTM, Рабочие области и остальные вкладки требуют PageBuilder Pro.

ВкладкаСлойНазначение
BlocksFreeUI-конструктор типов секций (pb_section_types)
UTMProГлобальный реестр UTM-параметров (pb_utm_params), capability utm
Рабочие областиProНаборы вкладок на форме ресурса по шаблону (pb_collections), capability collections
BasketProГлобальная корзина удалённых секций и строк таблиц
Шаблоны страницProСкелеты пустых секций (pb_page_templates), capability page-templates
FormsProСхемы для form_builder, capability forms
BundleProExport и import UI-типов секций
API tokensProBearer-токены REST API v1

Панель управления PageBuilder

Blocks

CRUD типов секций без деплоя PHP. Встроенные JSON из core/components/pagebuilder/sections/*.json можно править, скрывать и восстанавливать в каталоге через панель управления.

Фильтр по источнику (чипы, выбор сохраняется в браузере):

ЧипЧто показывает
ВсеПакетные и свои типы
Из пакетаТипы из JSON пакета (и их UI-override в БД)
МоиТипы, созданные в панели управления

Кнопка Скрыть предустановленные массово прячет типы из пакета (published = 0 для UI-override и своих; для code-типов hide по-прежнему через lifecycle). Свои типы остаются. Секции на уже собранных страницах не меняются.

В карточке типа поле Превью в каталоге: загрузите скриншот вёрстки. В диалоге + Создать на ресурсе он заменит схематичную картинку пакета.

При capability presets (Pro) на вкладке Blocks тумблер Показывать примеры в каталоге пишет pagebuilder_catalog_examples_enabled через mgr/config/save. То же значение задают в системных настройках.

ДействиеЧто происходит
ПереопределитьЗапись в pb_section_types, флаг overridesCode. На runtime побеждает БД
СкрытьТип не виден в каталоге на ресурсе, в панели управления остаётся с badge «Скрыт»
Удалить (code-тип)Tombstone removedCode в БД. JSON в пакете не удаляется
ВосстановитьВключите «Показывать скрытые» → Восстановить

При обновлении дополнения строки pb_section_types не перезаписываются: побеждает БД. Системные настройки пользователя тоже не сбрасываются (update.settings = false). Секции на уже опубликованных страницах продолжают рендериться.

Connector mgr/sectiontype/remove принимает POST-параметр lifecycle: hide, remove, restore (не путать с action connector). Для массового hide передаётся массив keys.

Подробнее про JSON-схему: Разработчик → Определение секции.

UTM

Нужна capability utm. Параметры для плейсхолдеров {{utm:key}} и значений по умолчанию. Правила видимости секций задаются в диалоге Видимость инспектора ресурса (settings.utm), если включена pagebuilder_inspector_visibility_enabled. Не на этой вкладке. Уже опубликованные правила на сайте исполняет Free.

На фронте сессия UTM: PageBuilderUtmSession до PageBuilder. Ссылки: Сниппеты.

Collections

Вкладка в панели называется Рабочие области. Нужны PageBuilder Pro и capability collections. Без capability вкладки нет, даже если pagebuilder_collections_enabled = 1.

Collection привязывается к template_ids (пустой список означает все шаблоны). При включённой настройке старые вкладки resource_tab_enabled и resource_tables_tab_enabled заменяются динамическим набором из панели управления.

Типы вкладок (tab_type)

ТипПоведение на ресурсе
sectionsВкладка «Секции» (Vue pagebuilder-resource)
tableТабличные данные ресурса (table_key опционален)
resourcesДочерние ресурсы
emptyЗаглушка (config.message)
modx_collectionsИнтеграция с MODX Collections (pagebuilder_collections_modx_bridge_enabled)
iframeURL во <iframe>

CRUD коллекций и разрешение вкладок для шаблона: mgr/collection/list, save, remove, resolve.

Настройки: Системные настройки → Collections.

Корзина (Pro)

Флаг basket. Корзина на странице в черновике ресурса остаётся в Free.

Индекс секций из draft.trash[] и строк таблиц при удалении. Синхронизация при pbOnAfterSave. При OnEmptyTrash ресурса записи индекса для этого resource_id удаляются.

ДействиеНазначение
mgr/basket/listСписок (item_type, pagination)
mgr/basket/restoreВернуть секцию или строку таблицы
mgr/basket/purgeУбрать секцию из draft.trash и строку индекса. published_json не меняется
mgr/basket/restoreall / purgeallМассовые операции по массиву ids
ГдеЧто делает
Редактор ресурса → КорзинаНа странице: восстановление и окончательное удаление в черновике (Free)
Панель управления → КорзинаМежду ресурсами: список, восстановление в исходный ресурс, окончательное удаление (Pro)

Восстановление из панели управления вставляет секцию на позицию settings._trashIndex, как в корзине на странице. После purge секция пропадает с сайта только когда на ресурсе нажмут Сохранить.

Forms

Capability forms. Во вкладке создаёте схему с ключом и полями. Для select и radio заполните Варианты: по строке Подпись|value или только value. На странице секция form_builder выбирает этот ключ. Отправка идёт через FetchIt и сниппет PageBuilderFormBuilder.

Сервер проверяет CSRF и honeypot nospam. Письмо и webhook уходят синхронно после commit, в том же HTTP-запросе. Submissions в БД не хранятся. Файл в форме v1 не принимается. Процессоры: mgr/form/*.

Bundle

Export UI-типов секций, dry-run и import одной транзакцией через UiSectionTypeService.

  1. На исходном сайте откройте Bundle и выгрузите JSON.
  2. На целевом сайте вставьте JSON и запустите dry-run.
  3. План показывает create, update или conflict. Conflict не импортируется.
  4. Import применяет create и update.

В бандл v1 не входят secrets, токены, содержимое страниц, строки таблиц, формы и datasources. Процессоры: mgr/bundle/*.

API tokens

Capability api. Новому токену задают имя и scopes pages.read и catalog.read. Секрет показывают один раз. В системной настройке pagebuilder_rest_tokens остаются prefix и hash.

Отозванный токен отвечает 401. Транспорт включается pagebuilder_rest_api_enabled. Маршруты: REST API v1. Процессоры: mgr/resttoken/*.

Связанные страницы