Здравствуйте, пытаюсь сделать отправку формы с сайта на wordpress, использую такой js код
const submitBtn = document.querySelector('.callback-form__btn')
const inputName = document.querySelector('.form-input-name')
const inputPhone = document.querySelector('.form-input-phone')
const handlerUrl = "http://domen.ru/wp-content/themes/blog-theme/send.php";
submitBtn.addEventListener('click', async (event) => {
event.preventDefault();
const formData = {
name: inputName.value,
phone: inputPhone.value
}
const response = await fetch(handlerUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/json;charset=utf-8'
},
body: JSON.stringify(formData)
});
if (response.ok) {
alert("Ваше сообщение отправлено!");
console.log(response);
inputName.value = '';
inputPhone.value = ''
}
})
А также файл php
<?php
$name = isset($_POST['your-name']) ? $_POST['your-name'] : null;
$phone = isset($_POST['your-phone']) ? $_POST['your-phone'] : null;
$to = 'почта@gmail.com';
$subject = 'Обратная связь с сайта';
$headers = "Content-type: text/html; charset=utf-8 \r\n";
$message = '
<html>
<body>
<p><b>Имя</b>: '.$name.'</p>';
if ($phone) {
$message .= '<p><b>Phone</b>: '.$phone.'</p> ';
}
$message .= '</body></html>';
require(__DIR__ . '../../../wp-load.php');
$status = wp_mail($to, $subject, $message, $headers);
echo $status . $message;
?>
форма html
<form action="#" class="callback-form">
<input name="your-name" type="text" class="form-input form-input-name callback-form__input" placeholder="Ваше имя">
<input name="your-phone" type="tel" class="form-input form-input-phone callback-form__input" placeholder="Ваше телефон">
<textarea class="form-input callback-form__textarea" placeholder="Сообщение..."></textarea>
<button type="submit" class="callback-form__btn form-btn btn-reset">
<span>Отправить</span>
</button>
</form>
Когда отправляешь форму, пишет, что все хорошо, response.ok, но на мою почту (gmail), письма не приходят, в чем может быть проблема?