Чем заменить on_sent_ok в Contact Form 7?
Answered
В старых версиях плагина Contact Form 7 было событие "on_sent_ok". Можно было перехватить событие отправки почты и повесить свою функцию. Сейчас "on_sent_ok" не работает (в новых версиях плагина CF7).
А мне необходимо осуществить редирект на файл на сервере после успешной отправки почты. Каким образом можно сейчас сделать?
Best answer
on_sent_ok устарело, если не ошибаюсь, еще в 2017 году и в настоящее время не используется!
Вы должны использовать события DOM Events. В вашем случае, редирект после успешной отправки можно сделать на JS. Добавьте в footer.php вашей темы:
<script> document.addEventListener( 'wpcf7mailsent', function( event ) { location = 'https://ваш-сайту.ру/23.pdf'; }, false); <script>
Или в файл functions.php активной темы:
add_action( 'wp_footer', 'mycustom_wp_footer' ); function mycustom_wp_footer() { ?> <script> document.addEventListener( 'wpcf7mailsent', function( event ) { location = 'https://ваш-сайту.ру/23.pdf'; }, false); <script> <?php }
После успешной отправки данных с формы CF7 пользователь будет перенаправлен на https://ваш-сайту.ру/23.pdf