Как отключить функцию автозаполнения в Contact Form 7

Contact Form 7 — это один из самых популярных плагинов для WordPress. Он используется для создания контактных форм на сайтах и на данный момент установлен на более чем 5 миллионах веб-ресурсов. Этот плагин бесплатен и поддерживается разработчиком Такаюки Миёси. Поэтому неудивительно, что многие выбирают его для создания простых форм обратной связи.

Однако недавно в интернете стали появляться статьи и обсуждения, в которых советуют удалить Contact Form 7, чтобы улучшить производительность вашего сайта. Хотя Contact Form 7, возможно, не самый быстрый плагин «из коробки», это не из-за загрузки его стилей CSS или файлов JavaScript.

Проблемы с использованием Contact Form 7 начались после обновления плагина примерно в июле 2018 года. Обновление было направлено на решение проблем с кэшированием страниц и внедрением функции CAPTCHA в формы. С этим обновлением начались поиски способов отключить функцию автозаполнения. Некоторые пользователи даже решались редактировать код плагина напрямую (что, кстати, не рекомендуется делать).

Примеры проблем, связанных с функцией автозаполнения:

  • Появление ошибки 500 при использовании функции автозаполнения Contact Form 7.
  • Ошибка 404 при использовании функции автозаполнения Contact Form 7 вместе с WooCommerce JSON.
  • Ошибка 404 при попытке доступа к Contact Form 7 через /wp-json/.
  • Предупреждение о кэшировании страниц и проблемы с производительностью при использовании Contact Form 7.

Список проблем, связанных с функцией автозаполнения, кажется бесконечным. Давайте подробнее рассмотрим, что представляет собой эта функция автозаполнения, кто ее использует и почему, и, наконец, я расскажу вам, как отключить эту функцию в Contact Form 7.

Что вызывает использование функции автозаполнения?

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

Цель функции автозаполнения — предотвращение проблем с CAPTCHA, когда используется кэширование страниц. Это актуально, если вы используете специальный плагин для кэширования и встроенную CAPTCHA в Contact Form 7. Функция автозаполнения действительно умное решение, она эффективно предотвращает потерю важных сообщений. Однако при использовании инструментов, таких как Akismet, она может быть не совсем подходящей для всех веб-сайтов.

Кроме того, если вы не используете CAPTCHA, но применяете кэширование страниц, данная функция будет вызываться несколько раз при каждой загрузке страницы, что может негативно сказаться на производительности вашего веб-сервера.

Да, это влияет на производительность моего сервера. Что можно сделать?

Решение оказывается настолько простым, что кажется даже грустным. Оно легко упускается из виду, если вы только мимоходом рассматриваете код Contact Form 7. Чтобы отключить функцию автозаполнения в Contact Form 7, вам нужно добавить собственный JavaScript. Для этого вставьте следующий код в плагин, такой как «Insert Headers and Footers», или в собственный блок JavaScript в вашей теме.

<script> wpcf7.cached = 0; </script>

Этот небольшой фрагмент кода сообщает Contact Form 7, что страница «X» не кэшируется, и ей не нужно загружать функцию автозаполнения. Просто убедитесь, что вы размещаете этот код в подвале вашей страницы, и он будет работать без сбоев.

Примечание: После добавления этого кода вам потребуется очистить кэш.

Заключение

Однако Contact Form 7 — это на самом деле один из самых минималистичных плагинов для создания контактных форм на рынке. Это объясняется тем, что у него нет сложного конструктора форм, больших файлов стилей CSS или громоздких JavaScript-файлов. Contact Form 7 работает просто и эффективно, а функция автозаполнения зависит от скорости работы вашего веб-сервера.

Оцените автора
Qamos
Добавить комментарий