mediol-name
@mediol-name
Developer

Почему не отправляется кастомная форма на почту Wordpress?

Привет, ребята! Написал свою форму и обработчик для нее. Поставил на страницу и при проверке не отправляются письма на почту. Хотя, на локальном хосте от MAMP письма формировались. Также ВП дат ошибку редиректа. Подскажите, почему сообщение не уходит на почту. Может ли это быть из-за редиректа?

Код обработчика:
<?php
    session_start();

    if(isset($_POST['send'])) {

        // fields
        $firstName = $_POST['first_name'];
        $lastName = $_POST['last_name'];
        $email = $_POST['email'];
        $address = $_POST['address'];
        $tel = $_POST['tel'];

        $date = $_POST['date'];
        $time = $_POST['time'];
        // checkboxes
        $complaints = '';
        foreach ( $_POST['complaints'] as $complaint ) {
            $complaints .= $complaint;
        }

        $message = 'Тут длинное сообщение. Не стал его все суда пихать.';
        $to =  'booking@gojoocy.com';
        $from = 'support@joocy.com';
        $subject = 'Requisition form Joocy';
        $subject = '=?utf-8&B&'.base64_encode($subject).'?=';
        $headers = 'From: $from\r\nReply-to: $from\r\nContent-type: text/html; charset=utf-8\r\n';
        mail($to, $subject, $message, $headers);
        header('Location:' . get_site_url(null, 'requisition-form/#top') );
    }
?>
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
@weart
Есть простой способ отладки wp_mail

global $ts_mail_errors, $phpmailer;
$send = wp_mail($user_email, $title, $message, $headers);
if ($send) {
	// nice
} else {
	if (isset($phpmailer)) {
		$ts_mail_errors[] = $phpmailer->ErrorInfo;
	}
	if ($ts_mail_errors) {
		// errors
	}
}
Ответ написан
Ваш ответ на вопрос

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

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