Gravity Forms: настройка сложных форм с условной логикой и интеграциями
Мы настраиваем Gravity Forms для проектов, где стандартные плагины не справляются: формы с ветвлением на 50 полей, калькуляторы стоимости, приём платежей через Stripe и передача данных в CRM. Однажды интернет-магазину потребовалось показывать разные способы доставки в зависимости от суммы заказа — условная логика Gravity Forms решила это без единой строки кода.
Почему Gravity Forms — стандарт для сложных форм?
В отличие от Contact Form 7, который требует хаков для условной логики, Gravity Forms предоставляет встроенные инструменты: калькуляторы, многошаговость, аддоны для Stripe и Zapier. На практике это означает, что форма заработает быстрее и без багов. Например, при создании формы предзаказа с 4 шагами и интеграцией Stripe мы уложились в 2 дня, и магазин принял первые 200 заказов в день запуска. По нашим замерам, настройка условной логики в Gravity Forms занимает в 10 раз меньше времени, чем в CF7.
Как установить и активировать лицензию?
Скачиваем плагин с gravityforms.com — требуется активная лицензия. После установки заходим в Settings → Gravity Forms и вводим лицензионный ключ. Важно: при переносе сайта деактивируйте лицензию на старом домене в личном кабинете, иначе она может быть заблокирована.
Создание формы: от простой к сложной
Forms → New Form — добавляем название, перетаскиваем поля. Поля делятся на группы:
- Standard: Text, Textarea, Select, Checkbox, Radio, File Upload
- Advanced: Name (автоматически разбивает на имя/фамилию), Email, Phone, Address, Date, Time, Website
- Pricing: Product, Quantity, Total, Coupon (для форм заказа)
- Post: Post Title, Post Body, Post Image (создание публикаций через форму)
Для каждого поля настраивается обязательность, placeholder, CSS-классы и маска ввода. Вкладка Appearance меняет порядок.
Как настроить условную логику за 10 минут?
Строим дерево зависимостей: выбираем поле, включаем Conditional Logic и задаём правило. Например, при выборе опции «Жалоба» показываем поле «Номер заказа», а при «Предложении» — поле «Ваша идея». Условную логику можно применять к полям, секциям, кнопкам «Далее» и даже уведомлениям: менеджеру по продажам письмо уходит только если выбрана категория «Покупка».
Уведомления (Notifications) и подтверждения (Confirmations)
На каждую форму настраиваем несколько уведомлений с разными получателями. Используем merge-теги {field_id:1} для подстановки данных. Пример: уведомление на почту клиента — текст «Спасибо, {field_id:1}»; уведомление в CRM — все поля формы.
Подтверждения: страница благодарности, редирект или текстовое сообщение. Можно сделать несколько подтверждений с условиями — например, для VIP-клиентов редирект на специальную страницу.
| Функция | Gravity Forms | Конкурент (CF7) |
|---|---|---|
| Условная логика | Есть, на все элементы | Только через хак |
| Калькуляторы | Встроенные | Нет |
| Интеграция Stripe | Аддон | Нет |
| Многошаговость | Встроенная | Сложно |
Сравнение тарифов лицензий
| Тариф | Количество сайтов | Дополнительные возможности | Цена (USD/год) |
|---|---|---|---|
| Basic | 1 | Базовая функциональность | $59 |
| Pro | 3 | Все аддоны кроме элитных | $159 |
| Elite | Неограниченно | Все аддоны, включая Stripe | $259 |
Выбор тарифа зависит от числа проектов. Для коммерческой разработки чаще берут Pro или Elite — они окупаются за счёт интеграций.
PHP API и хуки для кастомизации
// Получить данные отправки по ID записи $entry = GFAPI::get_entry( $entry_id ); echo $entry['1']; // значение поля с ID=1 echo $entry['created_by']; // ID пользователя WordPress // Добавить запись программно $entry = [ 'form_id' => 3, '1' => 'Иван Петров', '2' => '[email protected]', ]; GFAPI::add_entry( $entry ); // Действие после успешной отправки формы ID=3 add_action( 'gform_after_submission_3', function( $entry, $form ) { // Отправить данные в CRM $name = rgar( $entry, '1' ); $email = rgar( $entry, '2' ); send_to_crm( compact( 'name', 'email' ) ); }, 10, 2 ); // Кастомная валидация add_filter( 'gform_validation_3', function( $validation_result ) { $form = $validation_result['form']; $phone = rgpost( 'input_4' ); if ( ! preg_match( '/^\+7\d{10}$/', $phone ) ) { $validation_result['is_valid'] = false; foreach ( $form['fields'] as &$field ) { if ( 4 === $field->id ) { $field->failed_validation = true; $field->validation_message = 'Формат: +7XXXXXXXXXX'; } } $validation_result['form'] = $form; } return $validation_result; } ); Документация по хукам: Gravity Forms API.
Популярные аддоны
- Stripe Add-On — приём платежей прямо в форме, без редиректа на сторонний сайт. Настройка занимает час, комиссия Stripe — 2.9% + $0.30 за транзакцию.
- Zapier Add-On — интеграция с тысячами сервисов без кода.
- GravityView — вывод записей формы на фронте: таблицы, карточки, календарь.
- Custom Post Types — создание записей произвольных типов при отправке формы.
Что входит в настройку под ключ
При заказе настройки Gravity Forms мы делаем:
- конфигурацию лицензии и перенос на рабочий домен
- создание до 5 форм с условной логикой (сложные — до 10 полей)
- настройку уведомлений (почта, SMS) и подтверждений
- интеграцию с популярными CRM (Битрикс24, AmoCRM, HubSpot)
- тестирование отправки на всех сценариях
- документацию: описание полей, логику, API-ключи
Сроки и примеры из практики
Типовая форма с уведомлениями — несколько часов. Многошаговая с калькулятором и интеграцией CRM — 1-2 рабочих дня. На одном проекте для крупного ритейлера мы настроили форму предзаказа с 4 шагами и Stripe — весь процесс занял 2 дня, и магазин принял первые 200 заказов в день запуска. Все формы работают на серверах с PHP 8.1+ и не влияют на LCP (проверено на Core Web Vitals).
Наша команда имеет 5+ лет опыта работы с Gravity Forms и реализовала более 30 интеграций. Гарантируем, что формы будут отправляться без потерь, а данные попадут в нужные системы. Если у вас сложный сценарий — пишите, оценим проект за 1 день и предложим архитектуру. Закажите настройку Gravity Forms — свяжитесь с нами для консультации.







