Форма обратной связи для WordPress, возвращаясь к напечатанному.

Или как я избавился от слишком назойливой опеки антиспама на сервере.

Не так давно поднимал вопрос о форме обратной связи для сайта на WordPress [Копия].

Некий анон хотел меня затроллить, но, как обычно, мало того, что написал полнейшую чепуху, которая не работает, так еще и случайно помог вскрыть баг (хотя, скорее опцию) почтового сервера, которая, правда, лично мне мешала.

Ситуация такая: антиспам финского сервера (вполне оправданно, кстати) отправляет в спам письма с доменов .ru (mail.ru и yandex.ru точно), .kz, .by и некоторых не связанных с ГОРФ, типа .tk

Но, со спамом я неплохо справляюсь самостоятельно, и лишняя опека со стороны умной машины мне не нужна. На случай, мало ли у кого возникает аналогичная проблема, вот рецепт:

Находим в скрипте mail.php строчку:

$mes = "Имя: ".$name."\n\nТема: " .$sub."\n\nСообщение: ".$message."\n\n";

И меняем ее на:

$mes = "Имя: ".$name."\n\nТема: " .$sub."\n\nСообщение: ".$message."\n\n"."E-mail to answer: $email\n\n";

Ниже меняем в строке

$send = mail ($address,$sub,$mes,"Content-type:text/plain; charset = UTF-8\r\nFrom:$email");

$email на $address. Должно получиться:

$send = mail ($address,$sub,$mes,"Content-type:text/plain; charset = UTF-8\r\nFrom:$address");

Что этот код делает. Да все просто. Строка с сообщением ($mes) изменяется так, что адрес, который ввел пользователь в контактной форме, добавляется к тексту сообщения как простой текст. Параметры функции php mail изменяются так, что в заголовок письма вместо адреса пользователя, добавляется наш собственный адрес для приема сообщений из контактной формы. В результате мы получим сообщение, отправленное с нашего же адреса. Примерно как на скриншоте ниже:

Проблема с антиспамом решилась (сервер проверял только заголовки писем, а не указанные в тексте адреса), единственный минус — не ответить по нажатию соответствующей кнопки в почтовой программе, но тут уж, как говорится, шашечки или ехать.

Другой баг скрипта отправки почты, это то, что довольно легко его использовать автоматически и зафлудить почтовый ящик. Скоро расскажу, как побороть и эту беду.

Заметка в PDF

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *