Как стать автором
Обновить

MODx eForm

Время на прочтение 5 мин
Количество просмотров 16K
eForm это замечательный инструмент по работе с формами (обратная связь, анкеты и т.д.). Для начала, чтобы разобраться в нем я решил сделать перевод возможных параметров. К нему можно относиться и как к набору возможностей.

Текст получается очень объемный, так как возможностей очень много.



Описание



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

Обязательные параметры


&formid

Идентификатор формы, который используется при отправке
данных. Этот параметр необходим если на странице используется более одной
формы. Шаблон вашей формы должен иметь скрытое поле с тем же идентификатором: <input type=«hidden» name=«formid»
value=«formName» /> или (начиная с eForm 1.4.x) вы можете
установить идентификатор прямо в теге формы: <form
id=«formName»...>;

&tpl

Название чанка (не число) или идентификатор документа (число) для
используемого шаблона (новое в 1.4.4) Вы можете также использовать сниппет как
источник шаблона. При этом никакие параметры не передаются. Для регулярных
полей формы вам не нужно включать переменные, так как они автоматически
включаются eForm,
исключая случаи когда вы сами задаете значения. Доступны специальные
переменные: [+validationmessage+],
[+postdate+],[+verimageurl+] и [+debugText+]. Каждая форма должна содержать
переменную [+validatiomessage+].

&report

Название чанка (не число) или идентификатор документа (число) для шаблона
отчета. Должна содержать каждая форма.

Дополнительные параметры


&to (необязательно)

Адрес Email
на который будет послана информация. Можно использовать несколько адресов
разделяя их запятой (,). Если не указано, то будет использован системный адрес.

&from (необязательно)

Устанавливает адрес отправителя письма.

&fromname
(необязательно)

Устанавливает имя отправителя письма.

&replyto (необязательно)

Электронный адрес или поле содержащее адрес, который будет использован в
письме для ответа.

&sendirect (необязательно)

Включает возможность использовать поле формы для определения адреса, по
которому будет послано письмо.

  • 1 — включение
  • 0 — выключение (по умолчанию)

&cc
(необязательно)

Также как &email но
для Cc:

&bcc
(необязательно)

Также как &email но
для Bcc:

&ccsender
(необязательно)

Послать копию данных формы пользователю. По умолчанию установлено в 0. eForm ищет
адрес пользователя в поле с названием email.

  • 1 — включить
  • 0 — отключено (по умолчанию)

&subject (необязательно)

Тема сообщения, которая может включать [.поля формы.]. Например: Спасибо
за ваш заказ [.firstname.] [.lastname.]

&noemail (необязательно)

Защищает eForm от
посылки писем.

  • 1 — отключить отправку писем
  • 0 — включить отправку писем (по умолчанию)

&mailselector (необязательно)

Устанавливает поле формы, которое будет использоваться при выборе
единственного адреса из списка адресов разделенных запятой (,) для
использования в параметре &to. Значения поля будет определять
номер используемого почтового адреса. Номер 1 соответствует первому адресу и N — последнему.

Пример: &to
=`sales@me.com,support@me.com,billing@me.com` &mailselector=`topic`

В форме используется поле topic в виде выпадающего списка. Когда
пользователь выбирает значение, то тем самым он определяет один адрес, по
которому будут посланы данные формы.

&mobile (необязательно)

Адрес почты мобильного устройства. Используется для отсылки короткого
сообщения.

&mobiletext (необязательно)

Сообщение для отправки на мобильное устройство. Может содержать [.поля
формы.]. Например: Заказ для [.firstname.].

&thankyou (необязательно)

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

&gotoid (необязательно)

Идентификатор документа на который будет совершен переход после отправки
данных формы. Смотрите также &thankyou.

&category (необязательно)

Название или идентификатор категории используемый для категоризации eForm. Если категория не найдена, то
она автоматически будет создана. Это используется в теме сообщение.

&keywords (необязательно)

Разделяемые запятой (,) ключевые слова или [+поле формы+]
используемое при поиске банка данных. Например: [+firstname+],
[+lastname+], [+email+]

&autosender (необязательно)

Адрес электронной почты, который показывается при отправке сообщения
автоответчика. Например: no-reply@mydomain.com

&autoSenderName
(необязательно)

Имя, используемое в сообщении автоответчика.

&automessage (необязательно)

Название чанка (не число) или идентификатор документа (число) для
используемого шаблона в сообщении автоответчика. Может содержать [.поля формы.].

&allowhtml (необязательно)

Включает использовании пользователями HTML в сообщении.

  • 1 — включено
  • 0 — выключено (по умолчанию)

&language (необязательно)

Устанавливает используемый язык сообщений и проверки. Название языков
совпадает с MODx.

&vericode (необязательно)

Включает код проверки. Шаблон должен содержать поле для проверки и
переменную [+vericode+].

&debug (необязательно)

Включает расширенные сообщения об ошибках в проверке формы. В основном
для отладки #LIST и #SELECT.

&sendAsHtml (необязательно)

Определяет, какие сообщения будут использовать формат html.

  • 1 — все сообщения
  • report,
    autotext, mobile — конкретные типы
    сообщений

&sendAsText (необязательно)

Определяет, какие сообщения будут использовать текстовый формат.

  • 1 — все сообщения
  • report,
    autotext, mobile — конкретные типы
    сообщений

&sessionVars (необязательно)

Названия переменных сессии $_SESSION,
разделенные запятой (,). Они будут добавлены в список значений полей перед
отображением формы и может быть использована качестве скрытых полей. Если вы
используете этот параметр, то убедитесь, что вы не раскрываете важную
информацию сессии (скрытые поля не защищают информацию!).

Так как eForm не выполняет
самостоятельную обработку таких значений, то вам необходимо включить их в
шаблон. Например:
[!eForm &sessionVars=`jobID`… ]] и <input type=«hidden»
value="[<!-- -->+jobID+]" />

&postOverides (необязательно)

Используется в комбинации с &sessionVars. Переменные сессии будут
переписаны введенными в форму значениями. При установке значения 1 полученные в
форме данные получают приоритет.

&reportAbuse (необязательно)

При установке значения `1` будут посылаться сообщения на специальный
электронный адрес если будет замечена попытка инъекции eForm (используйте умеренно).

&cssStyle (необязательно)

Добавляет определение стиля в область страницы, на которой
располагается форма или сообщение для пользователя показываемое после отправки
(только если параметр &thankyou
установлен). Значения могут быть в виде идентификатора документа (число), имени
чанка или ссылки на таблицу стилей (относительная или абсолютная). Можно
использовать несколько значений разделяя их запятыми (,) (фактически можно
комбинировать все три вида значений).

Примеры:

[!eForm
&cssStyle=`assets/site/forms.css,chunkName`… ]]
[!eForm &cssStyle=`chunkName`… ]]
[!eForm &cssStyle=`http://mysite.com/assets/styles/forms.css`… ]]

Чанки (и документы, если установлен идентификатор документа) могут
использовать значения в форме:

  1. как
    встроенный блок
    как ссылка на таблицу стилей: <link href=«assets/site/forms.css»
    rel=«stylesheet» type=«text/css»>
    как разделенный запятой (,) список ссылок на таблицы стилей:
    assets/site/forms.css,assets/site/more.css,assets/site/gone_overboard.css
Теги:
Хабы:
+6
Комментарии 14
Комментарии Комментарии 14

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн