PageBuilder
Visual section builder for MODX 3. Draft and publish without overwriting resource content

Version: Pro.
Rows load via PageBuilderTableRows snippet on front. Filters limit use_context utm in data object. Fits catalog-scale data.
Chunk [[!PageBuilderTableRows? &table_key=...]]. Static 5–10 rows stay in table.
{
"name": "table",
"type": "embeddedTable",
"label": "Table",
"table_key": "products",
"tab": "Content",
"width": 100,
"active": true
}Object { table_key, limit, filters, … }.
Key table in the section data: query config (table rows are not stored in data):
{
"table": {
"table_key": "products",
"limit": 10,
"filters": {
"category": "phones"
},
"use_context": true,
"context_column": "context_key",
"use_utm": false,
"utm": {}
}
}PageBuilderTableRows snippet with the same table_key.[[!PageBuilderTableRows? &table_key=`products` &limit=`10`]]For fields with name that are stored in the section data:
| Key | Type | Role | CMP |
|---|---|---|---|
tab | string | Group subtitle in the inspector | yes |
width | 25–100 | Field width as % of the row (flex) | yes |
description | string | Hint under the label | yes |
default | any | Initial value for a new section | yes |
active | bool | false hides the field in the inspector | yes |
required | bool | Required on publish (draft still saves) | yes |
table_key, limit, filters, use_context, utm.See fields overview.