Дополнительные поля в feedback
Для того чтобы добавить дополнительное поле в форму обратной связи, необходимо только разместить необходимое поле с определенным именем в форме, после чего оно будет доступно для использования в шаблонах e-mail сообщений.
Для добавления дополнительного поля в форму, для поля ввода необходимо использовать атрибут с именем: name="xfield[X]" - где X это имя поля, написанное латинскими буквами. Например, вы хотите разместить в форме обратной связи поле для заполнения номера телефона, для этого в шаблоне feedback.tpl размещаете поле:
<input placeholder="Телефон отправителя" type="text" name="xfield[phone]">
где phone это уникальное имя дополнительного поля, а в шаблоне e-mail сообщений в админпанели размещаете тег: {%phone%}, после чего заполненный пользователем номер телефона будет также присылаться вместе с сообщением. А как быть тем, у кого стоит движок старой версии? Для этого поможет несколько вариантов хак.
Установка:
- Открыть engine/modules/feedback.php и найти:
$row['template'] = str_replace( "{%text%}", $message, $row['template'] );Добавить ниже:
$row['template'] = str_replace( "{%phone%}", preg_replace("#[^0-9+\-]#i","",$_POST['phone']), $row['template'] ); - Открыть в шаблоне feedback.tpl и добавить в форму текстовое поле с именем phone:
<input type="text" name="phone" placeholder="+7..." /> - Перейти в админпанель DLE, далее Шаблоны E-Mail сообщений -> Настройка E-Mail сообщения, которое отсылается через форму обратной связи, добавить:
Телефон отправителя {%phone%}
Источник: 🔗
Автор: Sander
Версия DLE: 11.1 / плагин для DLE 13.+
Плагин тестировался на DLE 19.0, но т.к. код с версией, указанной при публикации кода с версией 11.1 идентичен, то плагин должен работать на всех версиях DLE.