PageBuilder
Визуальный конструктор секций для MODX 3: черновик и публикация без перезаписи content ресурса

Универсальная сетка: в каждой карточке заголовок и короткий текст. Без иконок и кнопок. только структурированный список блоков.
Repeater Карточки: Заголовок и Текст на строку. Порядок перетаскиванием в инспекторе.
| Параметр | Значение |
|---|---|
| key | cards |
| Слой | Free |
| Категория | контент (content) |
| Chunk | pagebuilder_cards |
| Требования | — |
Заполните поля в инспекторе секции на ресурсе. Описание типов полей: справочник типов.
title) Тип text. Необязательное.
items) Тип repeater. Обязательное. Повторяющиеся строки. Кнопка «Добавить» в инспекторе.
В каждой строке:
| Поле | Тип | Подпись | Обязательно |
|---|---|---|---|
title | text | Заголовок | да |
text | textarea | Текст | нет |
Сетка pb-cards с элементами title + text.
Пример JSON после сохранения секции. Для media, video и map значения на выводе могут быть обогащены:
{
"title": "Заголовок секции",
"items": [
{
"_rowId": "00000000-0000-4000-8000-000000000001",
"title": "Заголовок секции",
"text": "Дополнительный текст под заголовком."
}
]
}Fenom chunk pagebuilder_cards:
<section class="pb-section pb-section--cards pb-cards{if $cssClass} {$cssClass|escape}{/if}" data-pb-section="cards"{if $id} id="pb-{$id|escape}"{/if}>
<div class="pb-section__inner pb-cards__inner">
{if $title}
<h2 class="pb-heading pb-cards__title">{$title|escape}</h2>
{/if}
<div class="pb-cards__grid pb-grid pb-grid--cards">
{foreach $items as $item}
<article class="pb-cards__item">
<h3 class="pb-cards__item-title">{$item.title|escape}</h3>
{if $item.text}
<p class="pb-cards__item-text">{$item.text|escape}</p>
{/if}
</article>
{/foreach}
</div>
</div>
</section>core/components/pagebuilder/sections/cards.json