Как сделать одну форму на formit c разными темами
Здравствуйте.
Делаю лендинг на modx, на одной странице используется куча форм обратной связи, отличий между ними только в одном — каждая отсылает свою тему сообщения. И из-за этого для каждой приходится делать свой обработчик.
А можно ли сделать так, чтобы форма была одна, но тема сообщения подменялась в зависимости от того блока, из которого вызывалась?
Пробую сделать через параметры чанков, но что-то не получается.
Делаю так:
Чанк Классика:
Имя: tarif-name
Значение: Классика
Ресурс «Заявка»
Подскажите, пожалуйста, как сделать так, чтобы не плодить кучу форм из-за необходимости делать каждой форме свою тему?
PS. Буду благодарен, если кто-нибудь подскажет именно решение, а не направление. По направлениям я уже второй день брожу, да без толку :-)
Делаю лендинг на modx, на одной странице используется куча форм обратной связи, отличий между ними только в одном — каждая отсылает свою тему сообщения. И из-за этого для каждой приходится делать свой обработчик.
А можно ли сделать так, чтобы форма была одна, но тема сообщения подменялась в зависимости от того блока, из которого вызывалась?
Пробую сделать через параметры чанков, но что-то не получается.
Делаю так:
Чанк Классика:
<div class="col-33 priceItem">
<div class="priceItem__head priceItem__head-brown2">«Классика»
Видеосъемка в ЗАГС</div>
<div class="priceItem__zakaz priceItem__zakaz-brown2">
<a data-type="iframe" class="button-link" data-src="[[~7]]" href="javascript:;">Заказать</a>
</div>
</div>Параметры чанка Классика:Имя: tarif-name
Значение: Классика
Ресурс «Заявка»
[[!FormIt?
&emailSubject=`Заявка с сайта [[++site_url]] на заказ [[+tarif-name]]` // Через [[+tarif-name]] я пытаюсь передать название тарифа, т.е. слово "Классика".
]]
<form class="forma" action="[[~[[*id]]]]" method="post">
<!-- Здесь код формы -->
</form>Ну и чанк с извещением на почту владельца сайта о пришедшей заявке:<p>Тема: "Пришел заказ на тариф [[+tarif-name]] с вашего сайта [[++site_name]]"</p>В обоих случаях, где есть вывод параметра [[+tarif-name]] — этот параметр приходит в виде строки " [[+tarif-name]]", а не в виде значения.Подскажите, пожалуйста, как сделать так, чтобы не плодить кучу форм из-за необходимости делать каждой форме свою тему?
PS. Буду благодарен, если кто-нибудь подскажет именно решение, а не направление. По направлениям я уже второй день брожу, да без толку :-)
Комментарии: 11
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
3-я строка в таблице Available Properties
Прочитал ещё раз тут promo-creative.com/formit.html
Потом перечитал всё это.
Но так и не понял, как это относится к моему вопросу :)
Но я-то как раз хочу уйти от этого. Сделать так, что бы было:
Форма — одна
subject — разный.
Ну или делаете 1 форму и javascript'ом при нажатии кнопки отправить ставите нужную тему в поле.
Если можно — через скайп подскажете? 300 руб. на ЯД закину.
Или мало?
Вызываете этот чанк 7 раз:
А в обработчике ставите emailUseFieldForSubject = 1, emailSubject оставляете при этом пустым
А в ресурсе уже хранится форма. Я могу положить форму в чанк и сделать его вывод в данном ресурсе. Но только один раз. Если 7 — то и будет семь форм во всплывашке.
getSubject:
А в самой форме ловите и подставляйте:
Если pdoTools не установлен, то сделайте простенький сниппет getSubj:
И тогда так:
PS
Одновременно с Алексеем )))
Испробовал оба варианта, всё работает.
И если в тело извещения добавить «subject»
то тоже нужная тема подтягивается.
Стал немного умнее в MODX :)