Постоянная загрузка при отправке писем — Contact Form 7

Без плагина WordSmall

Большинство блогеров столкнулись с «проблемой» в плагине Contact Form 7, а именно с бесконечной загрузкой при отправке писем. Или же не работает Ajax и письмо отправляется с перезагрузкой страницы. Так быть не должно. Несмотря на то что это насовсем «свежая» задача, оно продолжает распространяться и по сей день.

проблемы с contact form 7

В действительности, плагин Contact Form 7 по умолчанию работает корректно, полностью все функции. Появление подобного «дефекта» связано с тем, что в вашей теме, вы или кто-то другой (исполнитель), отключил события REST API. Такое часто случается, когда отключают через файл functions.php или подобным этому плагину, многие элементы в wp_head. Это еще называют чисткой. Так вот, рекомендуется совсем не отключать API-фильтры, так как они будут вскоре использоваться в админке. Ну, если они сильно вам мешают, то можно поискать другие решения, к примеру, закрыть запросы. В общем, отошел от темы. Решение.

Решить вопрос бесконечной загрузки в Contact Form 7

Для начала проверти все плагины, которые могут отключать, удалять и т.д. в header различные события. К примеру, Disable REST API, Clearfy и подобные им. Деактивируйте их по очереди и смотрите результат. Если это не помогло или у вас их не было установлены, тогда читаем дальше.

Открываем файл темы functions.php и ищем отключенные фильтры. Если поиск даст результат, то удаляйте их или закомментируйте. В данном случае ищем такие или похожие:

remove_action( 'init',          'rest_api_init' );
remove_action( 'parse_request', 'rest_api_loaded' );
Важно! После удаления отключения событий в functions.php обязательно зайдите в админку в раздел «Постоянные ссылки» и просто нажмите на кнопку «Сохранить изменения». Тогда только проверяйте результат. Это действие выполните и после отключения плагинов, если такие будут.

Не работает Ajax в Contact Form 7

Если возникла такая проблема, то в первую очередь проверьте подключен ли скрипт от плагина. Для этого откройте исходный код и в самом низу найдите такие строки:

<script type='text/javascript'>
/* <![CDATA[ */
var wpcf7 = {"apiSettings":{"root":"https:\/\/имясайта.ru\/wp-json\/contact-form-7\/v1","namespace":"contact-form-7\/v1"}};
/* ]]> */
</script>
<script type='text/javascript' src='https://имясайта.ru/wp-content/plugins/contact-form-7/includes/js/scripts.js?ver=5.1.4'></script>

Если эти скрипты подключены, тогда, возможно, вы устанавливали какой-то крючок или плагин, который позволяет подключать скрипты только там, где есть форма. Таких решений есть много и написаны они по-разному, в том числе и некорректно. Попробуйте удалить подобные хуки.

Но, если ничего такого не делали, тогда попробуйте изменить тему оформления и посмотреть, что получится. Если не даст результата, то пробуйте отключать по одному плагины. Бывает такое, что появляются разные конфликты.

Автор, он же Андрей, он же Admin, он же WordSmall

Лентяй-любитель, окончил высшую школу безделья с многочисленными знаками отличия. Создатель этого небольшого «чудо-блога» о еще более «чудном» контенте.

E-mail Google+ Twitter
Добавить комментарий
bold quote code