Contact Form 7 скрыть надпись об успешной отправке формы
После того, как форма в WordPress через плагин Contact Form 7 отправляется, появляется надпись об успешной отправке. И это очень хорошо, так как позволяет пользователю понимать, что действие совершено. Но проблема в том, что эта надпись никуда не исчезнет до тех пор, пока пользователь не обновит страницу. Частенько заказчики просят убрать эту надпись спустя несколько секунд. Давайте сегодня реализуем это.
Предполагаем, что у нас есть на сайте jQuery, поэтому код будет с его использованием. Как обычно все предельно просто:
document.addEventListener( 'wpcf7mailsent', function( event ) { setTimeout(() => { $('.wpcf7-form').removeClass('sent').addClass('init'); $('.wpcf7-response-output').html(''); }, 2000) }, false );
Несколько пояснений по коду. У плагина есть несколько дом событий, которые позволяют отслеживать статусы форм. Одно из них wpcf7mailsent, которое срабатывает сразу после отправки формы, его и будем слушать. Как только оно случается у всех форм убираем пометку о том, что форма отправлена sent и ставим отметку о том, что форма инициализирована init. Дополнительно очистим контейнер для информационных сообщений формы wpcf7-response-output. Вот и все!