maks843
@maks843
Web-дизйнер

Как сделать форму обратной связи wordpress?

Ребят, я тут сделал форму обратной связи в модальном окне. Теперь как сделать, чтобы после ее заполнения и отправки, сообщение приходило ко мне на почту?
<div id="modal-window" class="modal-window">
<div class="window-container fadeInDown animated">
<button class="close">Закрыть</button>
    <h1>Напишите мне письмо</h1>
            <form action="send.php" method="post">
                <input class="first" type="text" name="name" placeholder="Имя" required><br>
                <input class="first" type="email" name="email" placeholder="Email" required><br>
                <input class="first" type="subject" name="subject" placeholder="Тема"><br>
                <textarea class="input textarea" class="message" placeholder="Сообщение" required></textarea><br>
                <input type="submit" class="button" value="Отправить">
            </form>
</div>
</div>


Если я ставлю address="почта", то при отправке он меня перекидывает на страницу "Ничего не найдено"
  • Вопрос задан
  • 368 просмотров
Пригласить эксперта
Ответы на вопрос 2
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
Если action у вас - send.php, то после нажатия на submit браузер уйдет на эту страницу, передав ей все заполненные поля в массиве $_POST. Вот его и надо в этом send.php обработать, обязательно очистить и экранировать, и отправить письмо с помощью функции wp_mail(). Поскольку send.php эту отдельный файл, который не является шаблоном темы, надо будет включить wp-header.php, или попросту воспользоваться стандартной функцией PHP - mail().

Но это не совсем правильный путь. Есть и другие, более удобные варианты, а поскольку форма у вас в попапе, то лучше всего воспользоваться Ajax'ом. Пишете в functions.php функцию обработки массива $_POST и отправки письма, саму функцию хукаете в аяксовые экшны, далее с фронтенда отправляете javascript'ом данные на этот action, возвращаете результат json'ом и выводите в вашем попапе.

Если все это звучит для вас слишком сложно - установите Contact Form 7, Ninja Forms или другой нормальный плагин для форм обратной связи, установите к нему расширение для работы формы в попапе и не морочьте себе голову.
Ответ написан
@sergeystepanov1988
Поставьте плагин и не парьтесь.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы