Skip to content
  1. Extras
  2. PageBuilder
  3. PageBuilder Pro

PageBuilder Pro ​

The pagebuilderpro package extends the free editor and pulls pagebuilder core. Current line: 1.0.17-beta, requires pagebuilder ≥ 1.0.17.

Install Free and Pro from this line together: ProFeatureProvider implements serverContributions() and cmpContributions(). An older Pro without those methods fatals on load.

Pro flags ​

ProFeatureProvider registers feature flags. The Vue editor reads the list from PageBuilderConfig.capabilities.

FlagPurpose
proThe pagebuilderpro package is installed
libraryShared blocks: save/link/insert/edit master, pull from another page, write-through (pb_library_items)
versionsSection event journal (create/update/copy/remove/enable/disable) + View / Restore
page-templatesPage templates: ordered empty sections (pb_page_templates, mgr/pagetemplate/*)
responsiveSeparate field values for desktop, tablet, and mobile (text, textarea, url, number, currency, richtext, slug). Names alt, caption, and slug do not get the tabs
conditionssettings.conditions and evaluator (loggedIn, guest, context, GET, …)
presetsExamples tab in catalog (hidden when pagebuilder_catalog_examples_enabled = 0)
i18n-copyCopy section between contexts
advanced-fields23 field types in the control panel (Pro group in the list). Pro types in total are 27: datasource, form, product, and products are added. Without Pro, 35 Free types are available
basketGlobal basket in control panel (mgr/basket/*)
utmNew UTM rules and the registry. Already published rules still run in Free
collectionsResource tabs from the control panel (pb_collections, mgr/collection/*). Also needs pagebuilder_collections_enabled
datasourcesDynamic list and Filterable grid: providers modx-resources, pagebuilder-tables, minishop3, mgr/datasource/*
minishop3Fields product and products, and storefront sections. The flag is absent until the miniShop3 package is installed
formsCMP Forms, form builder, FetchIt, CSRF, honeypot. Email and webhook after commit. Submissions are not stored
apiAgent API and REST v1 tokens (mgr/resttoken/*, API tokens tab)
image-cropCrop for image and gallery fields (mgr/media/crop)

On the resource tab, pro-resource.min.js adds the Inherit / Library panel. Section history opens from the row menu.

Pro sections ​

Definitions live in pagebuilderpro/sections/. Chunk: pagebuilderpro_{key}. New types register via plugin on pbOnRegisterSectionDefinitions.

GroupExample keys
Generalfeatures, team, tabs
Content and conversionpricing_table, contact_form, quiz, spec_table, how_it_works, case_study, newsletter, accordion
Additionalmap, contact_map, logos, blog_posts, timeline, portfolio, downloads, locations
Datasources and formsdynamic_list, filterable_grid, form_builder
Commerceproducts_grid, categories_row, product_spotlight, promo_banner

Storefront sections require miniShop3 (requires: ["pro", "minishop3"]). Site catalog: Pro sections.

quiz and contact_form sections need FetchIt on the frontend.

Shared blocks ​

After Save as shared the section on the current page is immediately linked to the new master (libraryLocalFields: []).

ActionBehavior
Catalog → Shared blocks → InsertInsert linked or copy from master
Menu → Pull from another pagemgr/library/pull: Link or Copy mode
Local fields checklistsettings.libraryLocalFields in inspector
Page save / publishWrite-through synced fields to master on server (pbOnBeforeSave)

Pull reads the source draft. Link creates or reuses master, sets libraryId on source and inserts linked section on target. Copy adds sections without a link.

On render, master merges with local fields from libraryLocalFields. Without the key in settings, local keys override master. After Library write, HTML cache pagebuilder/* is cleared.

Shared blocks catalog tab is visible even when the list is empty.

Section event journal ​

Capability versions is a journal of events for one section, not snapshots of the whole page. From row menu: View / Restore (mgr/sectionevents/*). Page-level UI mgr/versions/* is not in the current line.

Page templates ​

Capability page-templates. Named skeleton: ordered list of section types without content (pb_page_templates).

WhereWhat it does
CMP → Page templatesCRUD: name, MODX template IDs, type order, default
Editor → Save as templateTakes only type / typeVersion from current page
Empty outline"Apply …" buttons for matching templates

Apply writes draft via mgr/pagetemplate/apply (non-empty draft needs force).

Examples ​

Examples tab in add catalog: ready blocks with text (capability presets, mgr/presets/list). After insert you can edit fields. Hide without deleting JSON: pagebuilder_catalog_examples_enabled or toggle in CMP Blocks.

The package ships 11 presets (pagebuilderpro/sections/presets/):

KeySection type
hero-centeredhero
cta-bannercta
stats-launchstats
features-gridfeatures
contact-splitcontact_map
blog-compact-listblog_posts
pricing-saaspricing_table
pricing-utmdata_table
products-heropromo_banner
quiz-kitchenquiz

pricing-utm is a data_table, not a pricing grid. products-hero needs miniShop3. quiz-kitchen needs FetchIt and sets the start label to Начать подбор.

Bundle ​

The tab is hidden (BUNDLE_ENABLED = false). mgr/bundle/* routes are not registered. A manager call returns Invalid action. Do not promise the tab until the flag is turned on in a release.

Export steps and bundle v1 contents: Control panel → Bundle.

Connector actions (Pro) ​

All requests are POST to assets/components/pagebuilder/connector.php with action=mgr/..., same as the Vue editor.

ActionPurpose
mgr/library/listLibrary item list
mgr/library/saveSave or update item
mgr/library/removeDelete item
mgr/library/adjustusageLibrary item usage counter
mgr/library/pullPull sections from another page (link | copy)
mgr/sectionevents/listSection event journal
mgr/sectionevents/getOne journal entry / section snapshot
mgr/sectionevents/recordAdd journal entry (internal / tests)
mgr/sectionevents/restoreRestore section state from journal
mgr/pagetemplate/list / get / save / removePage template CRUD
mgr/pagetemplate/applyApply template to draft
mgr/presets/listExample list for catalog tab
mgr/basket/*Global basket in control panel
mgr/api/page/snapshot / applyAgent API
mgr/datasource/*Datasource preview
mgr/form/*CMP Forms
mgr/bundle/*Export, dry-run, and import of UI types. Not registered while BUNDLE_ENABLED = false
mgr/resttoken/*REST API v1 tokens
mgr/ms3/products/searchProduct search for commerce sections
mgr/ms3/categories/searchminiShop3 category search (parent in grids and carousels)