Форма обратной связи для WordPress без плагинов
Есть разные плагины для организации обратной связи для WordPress. Почему-то ни один из них корректно не сработал в моем блоге.
Зная некоторые базовые основы WordPress и php, я подумал, что можно обойтись и без плагина. Предлагаю Вашему вниманию шаблон страницы для отправки почты:
<?php
/**
* Template Name: Contact Form
*/
get_header();
?>
<?php
if( ($_POST['frommail'] != '') && ($_POST['subject'] != '') && ($_POST['msg'] != '') && ($_POST['fromname'] != '') ){
$to = "<strong>[email protected]</strong>";
$subjectfrom = $_POST['fromname'];
$subjectdata = $_POST['subject'];
$subject = "[Contact form reply] " . $subjectdata;
$msg = $_POST['msg'];
$from = $_POST['frommail'];
$msg .= " \r\n";
$msg .= "\r\n От $subjectfrom";
$headers = "From: $from";
mail($to,$subject,$msg,$headers);
echo '<center><b>Спасибо за Ваш отзыв! Письмо было отправлено.</b><br><br>';
}
?>
<body>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<div>
<center><table style="width:40%;">
<tr> <td>E-mail адрес *:</td><td><input type="text" name="frommail" /></td></tr>
<tr><td>Имя *:</td><td><input type="text" name="fromname" /></td></tr>
<tr><td>Тема *:</td><td><input type="text" name="subject" /></td></tr>
<tr><td>Ваше сообщение *:</td><td><textarea rows="4" cols="23" name="msg"></textarea></td></tr>
<tr><td colspan="2"> <input type="submit" value="Отправить" /></td></tr>
</table></center>
<?php get_footer(); ?>
Этот код нужно сохранить %папка_темы%/page-templates/contact-form.php
.
Дальше заходим в админку, создаем еще одну страницу. Название выберите на Ваше усмотрение. Прокручиваем страницу вниз в правой части экрана в разделе Атрибуты страницы
выбираем шаблон Contact Form
. Сохраняем. Радуемся.
Не забудьте поменять [email protected] на адрес Вашего почтового ящика.
На выходе получаем вот такую форму, с помощью которой люди могут войти в контакт с Вами: