Дополнительные поля в feedback

Дополнительные поля в feedback

Для того чтобы добавить дополнительное поле в форму обратной связи DLE 13.x, необходимо только разместить необходимое поле с определенным именем в форме, после чего оно будет доступно для использования в шаблонах e-mail сообщений. Для добавления дополнительного поля в форму, для поля ввода необходимо использовать атрибут с именем: name="xfield[X]" - где X это имя поля, написанное латинскими буквами. Например, вы хотите разместить в форме обратной связи поле для заполнения номера телефона, для этого в шаблоне feedback.tpl размещаете поле:
<input placeholder="Телефон отправителя" type="text" name="xfield[phone]">


где phone это уникальное имя дополнительного поля, а в шаблоне e-mail сообщений в админпанели размещаете тег: {%phone%}, после чего заполненный пользователем номер телефона будет также присылаться вместе с сообщением. А как быть тем, у кого стоит движок старой версии? Для этого поможет несколько вариантов хак.

Установка:
1. Открыть 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'] );

2. Открыть в шаблоне feedback.tpl и добавить в форму текстовое поле с именем phone:
<input type="text" name="phone" placeholder="+7..." />

3. Перейти в админпанель DLE, далее Шаблоны E-Mail сообщений -> Настройка E-Mail сообщения, которое отсылается через форму обратной связи, добавить:
Телефон отправителя {%phone%}

Готово!
 
Версия DLE: 11.1
Автор: Sander
Источник
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.