Все для создания и продвижения сайтов

Верстка, программирование, SEO

Форма обратной связи modx на MODX без спама

количество просмотров 4230
Форма обратной связи modx на MODX без спама

Для создания формы на Modx без спама, надо её создать с дополнительными невидимыми полями:

1. Загружаем и устанавливаем компоненты Ajaxform и Formit

2. Форма вызывается очень просто, вы должны разобраться

[[!AjaxForm?
    &snippet=`FormIt`
    &form=`tpl.AjaxForm.example`
	&hooks=`email,spam`
	&emailFrom=`no-replay@daruse.ru`
    &emailSubject=`Поддержка daruse.ru`
	&emailTo=`info@daruse.ru`
	&validate=`name:required,email:required,message:required,work-email:blank`
	&validationErrorMessage=`В форме содержатся ошибки!`
	&successMessage=`Спасибо за заявку! Мы свяжемся с вами в ближайшее время.`
	&emailTpl=`mailtpl`
]]

Описание параметров:

  • snippet - сниппет для обработки AjaxForm, ставим Formit - он как раз и отправляет письма
  • form - чанк оформления формы, стоит тот, который по умолчанию
  • hooks - хуки для защиты от спама
  • emailFrom - адрес, от которого приходит письмо
  • emailTo - адрес, которому приходит письмо
  • validate - валидация, тут также два невидимых поля
  • validationErrorMessage - сообщение, которые будет выводиться, при не успешном вводе полей
  • successMessage - сообщение, которые будет выводиться, при успешной отправке письма
  • emailTpl - чанк, в котором храниться шаблон приходящего письма на почту (о нём читайте ниже)

3. После этого заходим в наш чанк оформления формы, в данном случае это tpl.AjaxForm.example и добавим после тега form, следующие два поля.

<form action="" method="post" class="ajax_form af_example form-horizontal">
 <input  class="forminpun" type="hidden" name="nospam:blank" value="" />
 <input class="forminpun" type="hidden" name="work-email" value="" />
...
</form>

Теперь по Вашей форме не должен проходить спам, за счет двух новых полей.

4. Внешней вид приходящего письма

По умолчанию приходит на почту письмо без всякого форматирования в не очень читаемом формате. Поэтому давайте оформим немного наше письмо на примере.

Шаблон письма это простой чанк, который мы указываем в параметре emailTpl, тут всё очень просто, напишу пример оформления. Если будут вопросы, пишите в комментариях.

mailtpl:

    

На сайте [[++site_url]] оставили заявку.

[[+name:notempty=`

Имя: [[+name]]

`]] [[+email:notempty=`

Почта: [[+email]]

`]] [[+message:notempty=`

Сообщение: [[+message]]

`]]

Пожалуйста свяжитесь с ним в ближайшее время.

Не отвечайте на это письмо, так как оно автоматическое.

Читайте о создании обратной формы на Ajax и php и простой обратной форме на php c защитой от спама.

Последние статьи

Инструменты

Отблагодарить и поддержать автора
Если вы нашли ошибку, выделите её и нажмите Ctrl+Enter
Выделите опечатку и нажмите Ctrl + Enter, чтобы отправить сообщение об ошибке.