Настройка плагина Contact Form 7 для WordPress

Наша компания занимается разработкой, поддержкой и обслуживанием сайтов любой сложности. От простых одностраничных сайтов до масштабных кластерных систем построенных на микро сервисах. Опыт разработчиков подтвержден сертификатами от вендоров.

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Предлагаемые услуги
Показано 1 из 1 услугВсе 2065 услуг
Настройка плагина Contact Form 7 для WordPress
Простая
от 4 часов до 2 рабочих дней
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    874
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    851

Настройка плагина Contact Form 7 для WordPress

Contact Form 7 — самый популярный бесплатный плагин форм для WordPress, установленный на десятках миллионов сайтов. Минималистичен: не хранит заявки в базе по умолчанию, не имеет визуального редактора — только шорткоды и хуки. Для простых форм обратной связи этого достаточно.

Создание формы

После установки: Контакты → Добавить. Форма создаётся через простой шорткод-синтаксис:

[text* your-name placeholder "Ваше имя"]
[email* your-email placeholder "Email"]
[tel your-phone placeholder "+7 (___) ___-__-__"]
[textarea your-message placeholder "Сообщение" 10x5]
[submit "Отправить"]

Звёздочка после типа поля (text*, email*) означает обязательность. Форма вставляется на страницу шорткодом [contact-form-7 id="123"].

Настройка почты

Вкладка Mail в редакторе формы:

To: [email protected]
From: [your-name] <[email protected]>
Reply-To: [your-email]
Subject: Заявка с сайта: [your-name]
Body:
  Имя: [your-name]
  Email: [your-email]
  Телефон: [your-phone]
  Сообщение: [your-message]

Вкладка Mail (2) — второе письмо, например автоответ клиенту.

Хранение заявок в базе

CF7 сам по себе заявки не сохраняет — только шлёт письма. Для хранения устанавливается аддон Flamingo:

Плагины → Добавить → Flamingo → Установить

После установки в меню появляется «Flamingo» с разделом «Inbound Messages» — все отправки форм там.

Защита от спама

Встроенная защита — honeypot и интеграция с Akismet:

// В настройках формы - вкладка Additional Settings
acceptance_as_validation: on

Для reCAPTCHA v3: Контакты → Интеграция → reCAPTCHA — ввести ключи от Google. Тег [recaptcha] добавляется в форму.

Turnstile от Cloudflare подключается через плагин CF7 Turnstile.

Кастомная валидация

add_filter( 'wpcf7_validate_tel', function( $result, $tag ) {
    $value = isset( $_POST[ $tag->name ] ) ? trim( $_POST[ $tag->name ] ) : '';
    if ( $tag->is_required() && ! preg_match( '/^\+7[\d\s\-\(\)]{10,}$/', $value ) ) {
        $result->invalidate( $tag, 'Введите корректный российский номер телефона' );
    }
    return $result;
}, 10, 2 );

Обработка отправки

add_action( 'wpcf7_mail_sent', function( $contact_form ) {
    $submission = WPCF7_Submission::get_instance();
    if ( ! $submission ) return;

    $data = $submission->get_posted_data();
    $name  = sanitize_text_field( $data['your-name'] ?? '' );
    $email = sanitize_email( $data['your-email'] ?? '' );

    // Отправить в Telegram, CRM и т.д.
    send_telegram_notification( "Новая заявка от $name ($email)" );
} );

Динамические значения по умолчанию

CF7 поддерживает специальные теги для подстановки динамических данных:

[hidden page-url "https://[_site_url][_url]"]
[hidden user-login "[_user_login]"]
[text* name default:"[_logged_in_user first_name]"]

Для более гибких значений — фильтр wpcf7_form_tag:

add_filter( 'wpcf7_form_default_value', function( $value, $tag ) {
    if ( 'current-product' === $tag->name ) {
        return get_the_title(); // подставить заголовок текущей страницы
    }
    return $value;
}, 10, 2 );

Файловые вложения

[file upload-file limit:2mb filetypes:pdf|doc|docx]

Файлы прикрепляются к письму и удаляются с сервера после отправки. Для сохранения файлов — нужен кастомный код:

add_action( 'wpcf7_mail_sent', function( $form ) {
    $submission = WPCF7_Submission::get_instance();
    $uploaded   = $submission->uploaded_files();
    foreach ( $uploaded as $field => $path ) {
        // скопировать $path в /uploads/submissions/
        copy( $path, WP_CONTENT_DIR . '/uploads/submissions/' . basename( $path ) );
    }
} );

Ограничения CF7

Нет условной логики, нет многошаговых форм, нет хранения заявок «из коробки», нет визуального редактора. Для простого «имя + телефон + сообщение» — отлично подходит. Для сложных форм лучше смотреть на Gravity Forms или WPForms.

Сроки

Настройка одной-двух форм с почтой и защитой от спама — 2–4 часа.