Как автоматически заполнить адрес электронной почты с помощью формы Modx FormIt из URL

У меня есть веб-сайт, который был сделан в Modx(yuck), и с помощью FormIt я создал простую страницу с 1 полем, текстовое поле для электронной почты.

   <form method="post" action="" id="1">
   <label for="advisorName">Email Address:</label><input id="email" type="text" name="email" value=""></form>

Как я могу получить поле электронной почты, заполненное из URL, например:

www.example.com/unsubscribe.html?id=1&email=myemail@address.com

Это легко для меня со стандартным сайтом, но я так запутался с Modx.

2 ответа

Решение

Вы хотите создать "Фрагмент", который является просто частью php-кода. Назовите свой фрагмент как угодно и что-то вроде этого должно сделать:

return (!empty($_GET['email']) ? $_GET['email'] : 'Enter e-mail');

Затем в вашем чанке / шаблоне или в том месте, куда вставлен код, измените входное значение на: value="[[!NameOfYourSnippet]]", Наручи указывают, что это фрагмент кода, который вы хотите вызвать, а восклицательный знак указывает modx не кэшировать то, что он выводит.

Счастливый модкс:ing!

Прочитайте документы - http://rtfm.modx.com/extras/revo/formit/formit.hooks/formit.hooks.email

[[!FormIt?
   &emailTo=`[[+addressTo]]`
]]
...
<select name="addressTo">
   <option value="john@doe.com" [[!+fi.addressTo:FormItIsSelected=`john@doe.com`]]>John</option>
   <option value="jane@doe.com" [[!+fi.addressTo:FormItIsSelected=`jane@doe.com`]]>Jane</option>
</select>

или если вам просто нужно получить поле электронной почты - http://rtfm.modx.com/extras/revo/formit/formit.tutorials-and-examples/formit.examples.custom-hook

Другие вопросы по тегам