CONTACT FORM 7 отличный бесплатный плагин для создания форм ,но у него есть недостаток.Нет уникального идентификатора письма .Сейчас мы это решим.
Для этого нужно поставить простенький плагин для создание служебных полей
Contact Form 7 Dynamic Text ExtensionСтавивим плагин .потом будем работать в вашей темы .Можно было это сделать плагином( если нужно будет я сделаю плагин , пишите в коментарии).Пока будем так работать.
Этот коди добавляем в function.php вашей активной темы.
//Определяем ключ для хранения данных define( 'CF7_COUNTER', 'cf7-counter' ); //Создаем шорткод, который устанавливает значение для поля Dynamic Text Extension function cf7dtx_counter(){ $val = get_option( CF7_COUNTER, 0) + 1; //Увеличиваем текущее значение на 1; return $val; } add_shortcode('CF7_counter', 'cf7dtx_counter'); //Включаем счетчик в работу если письмо было действительно отправлено function cf7dtx_increment_mail_counter(){ $val = get_option( CF7_COUNTER, 0) + 1; //Увеличиваем текущее значение на 1 update_option(CF7_COUNTER, $val); //Обновляем параметры в базе данных } add_action('wpcf7_mail_sent', 'cf7dtx_increment_mail_counter');
Принцип работы такой. когда мы заполняем поле. фунция пишет в базу в часности а таблицу options значение. При повторной отправке мы смотрим какое значение в базе и увеличиваем его на 1 .И так далее. Канено есть минусы . Но функцию можно доработать .здесь указан только принцип.
Вставляем код в форму
[dynamichidden cf7-counter "CF7_counter"]
Добавляем шорткод самого счетчика в сообщение которое мы получим:
[cf7-counter]
Если необходимо обнулить счетчик можно в базе поменять ,или же через функции wordpres
Олег
- 24 июня 2018, 03:34 ↓Плагин был бы не лишним!
Admin-sites
- 26 июня 2018, 11:05 ↓-I-D-
- 23 января 2019, 00:03 ↓