Пример формы обратной связи
Как добавить такую форму на свой сайт
- Откройте приложение «Сайт» и перейдите в раздел «Блоки».
- Выберите блок с названием «site.send_email_form».
- Щелкните по фрагменту кода под надписью «Встроить на страницу или в шаблон».
- Скопируйте выделенный фрагмент кода и вставьте его в HTML-код любой страницы или шаблон темы дизайна.
Как изменить адрес, на который отправляются сообщения из формы обратной связи
Сообщения, которые посетители сайта оставляют через форму обратной связи, отправляются на email-адрес, указанный в поле «Email-адрес для уведомлений» в приложении «Настройки».
Введите в этом поле любой email-адрес, на который должны отправляться все системные уведомления Вебасиста, включая сообщения из формы обратной связи.
Если вы не хотите изменять содержимое этого поля, то можно указать адрес получателя сообщений обратной связи в исходном коде блока «site.send_email_form». Для этого добавьте нужный email-адрес внутри кавычек, как показано ниже:
$wa->sendEmail("admin@mycompany.ru", $errors)
Можно указать и несколько адресов получателей:
Простой формат (только адреса)
{$wa->sendEmail(['address1@domain.ru', 'address2@domain.ru'], $errors)}
Расширенный формат (адреса получателей с их именами)
{$wa->sendEmail(['address1@domain.ru' => 'Имя1', 'address2@domain.ru' => 'Имя2'], $errors)}
Как убрать поле для ввода защитного кода (капчи)
Для защиты от автоматически добавляемых сообщений (спама) в форме обратной связи используется поле для ввода защитного кода (капчи).
Если вы считаете, что необходимость вводить защитный код мешает посетителям вашего сайта отправлять сообщения, то отключите это поле. Для этого перед строкой с вызовом метода {$wa->sendEmail(...)} добавьте следующее:
{$wa->storage(['captcha', $wa->app()], '')}
Таким образом вы «говорите» фреймворку Webasyst, что правильной капчей является пустая, т. е. сообщение отправится, если ничего не написать в поле для ввода защитного кода.
Теперь осталось убрать поле для ввода защитного кода, чтобы оно не вводило в заблуждение посетителей сайта. Для этого удалите из исходного кода блока «site.send_email_form» следующий фрагмент:
<div class="wa-field"> <div class="wa-value"> {$wa->captcha(!empty($errors.captcha))} {if !empty($errors.captcha)}<em class="wa-error-msg">{$errors.captcha}</em>{/if} </div> </div>
10 комментариев
Добрый день.
Куда нужно вставить {$wa->block("site.send_email_form")}
в форму :
Спасибо.
Напишите подробнее, какой результат вы хотите получить и для чего вы показали здесь фрагмент PHP-кода.
Эта форма не работает. Нужно, чтобы данная форма брала данные для отправки из <font color="#000000">"webasyst/webasyst/settings/email/"</font>
О какой форме вы пишете?
Проголосуйте, пожалуйста, за такое предложение в специальном разделе форума поддержки. Или добавьте новое предложение на форуме, если его там ещё нет.
Если решение нужно более срочно, за индивидуальной разработкой обратитесь, пожалуйста, к партнёрам Webasyst.
Для чего вы добавили здесь этот фрагмент кода?
Добрый день!
В связи с тем, что у меня на фреймворке созданы несколько сайтов, использование для них одной и той же формы обратной связи из Блоков весьма затруднительно (для каждого сайта свои адреса почты и т.п.). Поэтому я использую вот такую форму на каждом сайте, меняя почту и ссылку на политику, но никак не могу заставить ее писать сообщения о незаполненных полях красным или иным цветом. Подскажите, пожалуйста, где и как это можно сделать? Спасибо.
За индивидуальной разработкой обратитесь, пожалуйста, к нашим партнёрам. Или задайте свой вопрос на форуме поддержки.
Спасибо за обстоятельный ответ. Я лишь просил указать строчку в коде, которую нужно поправить, и, по возможности, подсказать как.