Skip to content
PageBuilder
PageBuilder
Визуальный конструктор секций для MODX 3: черновик и публикация без перезаписи content ресурса
  • MODX 3
  • PHP 8.2
  • Vue 3
  1. Компоненты
  2. PageBuilder
  3. Вывод на сайте
  4. Сниппеты
  5. PageBuilderContactForm

Сниппет PageBuilderContactForm ​

Обработчик AJAX-отправки секции Pro contact_form. Чанк секции вызывает его через FetchIt. Из шаблона ресурса сниппет не вызывайте.

Назначение ​

Проверяет поля, шлёт письмо через modMail, отвечает JSON FetchIt (success / field errors / redirect).

Где вызывается ​

Чанк pagebuilderpro_contact_form вызывает PageBuilderFetchIt со свойствами snippet = PageBuilderContactForm и form = pagebuilderpro_contact_form_fields.

Параметры ​

Отдельных свойств для вызова из шаблона нет. POST формы:

ПолеНазначение
pb_form_keyКлюч формы из данных секции. Пустой ключ: ошибка валидации
pb_csrfТокен из скрытого поля чанка. Неверный или пустой: лексикон pagebuilder_fe_form_validation_error
поля repeaterИмена и правила из секции
nospamHoneypot. Заполненное поле отвечает success до проверки CSRF, письмо не отправляется
pageIdНеобязательный id ресурса со страницы формы

resource_id страницы, где искать секцию:

ИсточникПриоритет
POST pageId1
свойство resource_id в action FetchIt2
текущий ресурс MODX3

Чанк передаёт в action ключи form_key, form_csrf, successMessage и validationErrorMessage. form_csrf в action важнее токена сессии.

Ошибки ​

СитуацияОтвет
Секция с тем же form_key не найденаpagebuilder_fe_form_not_found
Прямой вызов обработчика без сервиса FetchItJSON с pagebuilder_fe_fetchit_unavailable
Отрисовка формы без FetchItЧанк показывает pagebuilder_fe_form_unavailable, см. PageBuilderFetchIt
modMail не отправил письмоpagebuilder_fe_form_send_error, письмо не считается отправленным

Зависимости ​

ПакетЗачем
pagebuilderproСекция contact_form
FetchItAJAX и ошибки в полях

См. также ​