Intereting Posts
используя get_option для добавления другого js В панели управления администратора я могу выбрать, какие разделы будут отображаться? Каково условие проверить, находимся ли мы в админ или интерфейс? Обновить таблицу wp_term_taxonomy.count после INSERT INTO через SQL Использование preg_replace для очистки вывода виджета HTML Попытка помещать массив в запрос post__in '=> array () не работает Регистр переднего регистра с настраиваемыми полями Как я могу получить «предыдущий» и «следующий», чтобы показывать в навигации помимо ссылок? остановить печать с помощью макросъемки и сохранить как переменную? PHP-код внутри коротких кодов Перемещено WP в новую папку. Как исправить ссылки на изображения в сообщениях? get_categories список для детей с детьми База данных разработки плагинов или база данных WordPress Могу ли я изменить имя /wp-admin/options-general.php? Используйте две разные страницы индекса

Как изменить контактный формуляр 7 Выход успешных / ошибок ответа

Я пытаюсь найти способ переопределить или фильтровать вывод ответных полей Contact Form 7, которые отображаются, когда отображается сообщение об ошибке формы или успешное сообщение.

По умолчанию Contact Form 7 выводит этот HTML-код, когда форма успешно отправляется:

<div class="wpcf7-response-output wpcf7-display-none wpcf7-mail-sent-ok" style="display: block;" role="alert"> Thank you for subscribing! </div> 

Фактически, я хочу изменить выходной HTML-ответ, чтобы быть предупреждающим предупреждением Bootstrap следующим образом:

 <div class="wpcf7-response-output wpcf7-display-none alert alert-success" role="alert"> Thank you for subscribing! </div> 

Я пробовал очистить документацию Contact Form 7 и просмотрел исходный код плагинов, чтобы найти фильтр, который, как мне кажется, мне нужен, но я не могу получить ответ HTML output для изменения. Это код, который я пробовал:

 function filter_wpcf7_response_output( $output ){ // Replace Success CSS Class $output = str_replace( ' wpcf7-mail-sent-ok', ' alert alert-success', $output ); return $output; } add_filter( 'wpcf7_form_response_output', 'filter_wpcf7_response_output', 10, 1 ); 

Но, похоже, он вообще не меняет результат … Любая помощь будет принята с благодарностью!

Solutions Collecting From Web of "Как изменить контактный формуляр 7 Выход успешных / ошибок ответа"

После более глубокого взгляда на это я понял, что отображаемые ответы создаются через контактную форму 7 AJAX.

Итак, следуя документации Contact Form 7 о событиях DOM , я смог получить эту работу, как я хотел, со следующим JS-кодом:

 /* Validation Events for changing response CSS classes */ document.addEventListener( 'wpcf7invalid', function( event ) { $('.wpcf7-response-output').addClass('alert alert-danger'); }, false ); document.addEventListener( 'wpcf7spam', function( event ) { $('.wpcf7-response-output').addClass('alert alert-warning'); }, false ); document.addEventListener( 'wpcf7mailfailed', function( event ) { $('.wpcf7-response-output').addClass('alert alert-warning'); }, false ); document.addEventListener( 'wpcf7mailsent', function( event ) { $('.wpcf7-response-output').addClass('alert alert-success'); }, false );