Как можно в ВордПресс сделать обратную связь с возможностью подгрузки доп. полей?

В WordPress вы можете создать обратную связь с возможностью подгрузки дополнительных полей с использованием нескольких способов. Давайте рассмотрим два наиболее популярных подхода.

1. Использование плагинов:
Самым простым способом добавления обратной связи с возможностью подгрузки дополнительных полей является использование специальных плагинов.

Один из самых популярных плагинов для этой цели - "Contact Form 7". Этот плагин позволяет создавать красивые формы обратной связи и добавлять пользовательские поля. Вы можете установить его, перейдя на страницу плагинов в административной панели WordPress и нажав кнопку "Добавить новый". После установки вы сможете создавать и настраивать свои формы обратной связи с помощью удобного интерфейса.

2. Создание пользовательской формы обратной связи:
Если вам необходимо создать более сложную форму обратной связи с дополнительными полями, вы можете воспользоваться стандартными средствами разработки WordPress.

Сначала вам нужно создать шаблон страницы, на которой будет размещена форма обратной связи. Создайте файл с расширением ".php" в папке темы вашего сайта и добавьте в него следующий код:

<?php
// Выводим форму обратной связи
echo '<form method="POST" action="' . esc_url( admin_url('admin-post.php') ) . '">';
// Добавляем обязательное поле для указания действия
echo '<input type="hidden" name="action" value="my_custom_contact_form">';
// Выводим основные поля формы обратной связи
echo '<label for="name">Имя:</label>';
echo '<input type="text" name="name" required>';
echo '<label for="email">Email:</label>';
echo '<input type="email" name="email" required>';
// Выводим дополнительные поля
echo '<label for="phone">Телефон:</label>';
echo '<input type="text" name="phone">';
echo '<label for="message">Сообщение:</label>';
echo '<textarea name="message" required></textarea>';
// Выводим кнопку отправки формы
echo '<button type="submit">Отправить</button>';
echo '</form>';
?>

Затем вам нужно добавить обработчик формы в файл functions.php вашей темы:

<?php
add_action('admin_post_nopriv_my_custom_contact_form', 'handle_custom_contact_form');
add_action('admin_post_my_custom_contact_form', 'handle_custom_contact_form');

function handle_custom_contact_form() {
    // Получаем данные из формы
    $name = $_POST['name'];
    $email = $_POST['email'];
    $phone = $_POST['phone'];
    $message = $_POST['message'];
    
    // Отправляем данные по почте или сохраняем в базе данных
    // ...
    
    // Перенаправляем пользователя после отправки формы
    wp_redirect( home_url('/thank-you/') );
    exit;
}
?>

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

Вы можете изменить код шаблона и обработчика формы в соответствии с вашими требованиями и дополнить его необходимыми полями.