
- MODX 3
- PHP 8.2
- Vue 3


Result: an empty Sections tab gets a ready order of types, with no copy. Requires PageBuilder Pro and capability page-templates. Rows live in pb_page_templates.
[[!PageBuilder]] in the template.page-templates is on.type and typeVersion, not field values.mgr/pagetemplate/apply. A draft that already has sections needs force.The sample page has hero, faq, and cta. Save as template, name Landing. pb_page_templates stores one row. sections_json holds three objects {type, typeVersion}, without Title or button text.
On a new resource with an empty draft click "Add empty sections from "Landing"". The inspector shows three empty sections of those types. Fill the hero Title and click Save.
After apply on an empty draft, the type order matches the sample and the fields are empty. Apply again on a non-empty draft without force leaves that draft in place.
Do not apply the template, or delete it in the CMP. Sections already inserted go to the page basket.