
- MODX 3
- PHP 8.2
- Vue 3


Первый блок после шапки сайта. Посетитель сразу видит заголовок, короткий текст и кнопку с ссылкой. Фоновую картинку можно включить или оставить однотонный фон.

pagebuilder_hero уже размечен под типичный первый экранПоле Заголовок обязательно. Кнопка выводится только если заполнены и Текст кнопки, и URL кнопки. Выравнивание переключает текст слева или по центру.
| Параметр | Значение |
|---|---|
| key | hero |
| Слой | Free |
| Категория | герой (hero) |
| Chunk | pagebuilder_hero |
| Требования | — |
Заполните поля в инспекторе секции на ресурсе. Описание типов полей: справочник типов.
title) Тип text. Обязательное.
description) Тип textarea. Необязательное.
button_label) Тип text. Необязательное.
button_url) Тип url. Необязательное.
background) Тип image. Необязательное.
alignment) Тип select. Необязательное. Выпадающий список с заранее заданными вариантами.
На сайте блок pb-hero с заголовком, описанием, ссылкой-кнопкой (pb-button) и опциональным фоном через partial изображения.
Пример JSON после сохранения секции. Для media, video и map значения на выводе могут быть обогащены:
{
"title": "Заголовок секции",
"description": "Короткое описание блока для первого экрана.",
"button_label": "Подробнее",
"button_url": "https://example.com/action",
"background": {
"url": "assets/images/example.jpg",
"id": 12,
"filename": "example.jpg",
"extension": "jpg",
"title": "example.jpg",
"width": 1920,
"height": 1080,
"type": "image"
},
"alignment": "left"
}Fenom chunk pagebuilder_hero:
{set $heroBg = is_array($background) ? ($background.url ?: '') : ($background ?: '')}
<section class="pb-section pb-section--hero pb-hero{if $alignment == 'center'} pb-hero--center{/if}{if $cssClass} {$cssClass|escape}{/if}" data-pb-section="hero"{if $id} id="pb-{$id|escape}"{/if}{if $heroBg} style="--pb-hero-bg: url('{$heroBg|escape}')"{/if}>
<div class="pb-section__inner pb-hero__inner">
<h2 class="pb-hero__title">{$title|pb_text}</h2>
{if $description}
<div class="pb-hero__description">{$description|pb_text}</div>
{/if}
{if $button_label && $button_url}
<a class="pb-hero__button pb-button" href="{$button_url|pb_href|escape}">{$button_label|pb_text}</a>
{/if}
</div>
</section>