@psvghg

Почему не отправляется письмо с сайта wordpress?

SL3u8GkmFlg.jpg Вот код
<meta http-equiv='refresh' content='5; url=https://pro-rbt.ru/'>
<meta charset="UTF-8" />
<?php
if (isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name);}}
if (isset($_POST['email'])) {$email = $_POST['email']; if ($email == '') {unset($email);}}
if (isset($_POST['subject'])) {$subject = $_POST['subject']; if ($subject == '') {unset($subject);}}
if (isset($_POST['body'])) {$body = $_POST['body']; if ($body == '') {unset($body);}}
if (isset($name) && isset($email) && isset($subject) && isset($body)){
$address = "pups22297@gmail.com";
$message = "Имя: $name \nE-mail: $email \nТема: $subject \nТекст: $body";
$send = mail ($address,$subject,$message,"Content-type:text/plain; charset = UTF-8\r\nFrom:$email");
if ($send == 'true')
{echo "Спасибо, ваше сообщение успешно отправлено!";}
else {echo "Ошибка, сообщение не отправлено!";}
}
else
{
echo "Вы заполнили не все поля, необходимо вернуться назад!";
}
?>
Не хочу использовать плагины. Поэтому сделал свою форму отправки, но она не отправляет письмо, в чём дело?
  • Вопрос задан
  • 68 просмотров
Пригласить эксперта
Ответы на вопрос 2
mosesfender
@mosesfender
Меланхолик, параноик, падал с коек
Тут может быть примерно так дюжина причин. Навскидку:
1. Сервер собран для отправки почты? Т.е. работает ли mail() вообще?
2. Происходит ли что-нибудь после строки
if (isset($name) && isset($email) && isset($subject) && isset($body)) { …
?

Проверять лучше так:
if (isset($_POST['name'])) {
            $name = trim($_POST['name']);
        }
…
        if (!empty($name) && !empty($email) && !empty($subject) && !empty($body)) {
…
Ответ написан
Комментировать
Kozack
@Kozack Куратор тега WordPress
Thinking about a11y
Для отправки писем в ВП есть wp_mail
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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