const formdata = new FormData();
formdata.append("your-name", "Bvz");
formdata.append("your-email", "test@mail.com");
formdata.append("your-subject", "Subject Text");
formdata.append("your-message", "Test message");
formdata.append("_wpcf7_unit_tag", "7061ed3"); // your uniq tag fron
const requestOptions = {
method: "POST",
body: formdata,
redirect: "follow"
};
fetch("http://your.domain/wp-json/contact-form-7/v1/contact-forms/28/feedback", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
Укажите
_wpcf7_unit_tag без этого форма не будет отправлена.
Обычно в шорткоде указан id он и есть _wpcf7_unit_tag
А вот id надо взять из адресной строки, параметр
post
/wp-admin/admin.php?page=wpcf7&post=28&action=edit
Локально это всё может не работать, но если указать реальную почту отправителя, на продакшене, при чём после @ должно идти имя вашего домена, для теста попробуйте например
Postman если получите:
{
"contact_form_id": 28,
"status": "mail_sent",
"message": "Thank you for your message. It has been sent.",
"posted_data_hash": "e3dfc8fb89a92eca04e644c72ee8e7d1",
"into": "#7061ed3",
"invalid_fields": []
}
Значит API работает.
На локальном сервере письмо не отправиться с большой вероятностью, а на продакшене уже могут приходить.
Contact Form 7
Версия
5.9.3
Автор:
Takayuki Miyoshi