Как отключить AJAX в WordPress для ускорения сайта

AJAX (Asynchronous JavaScript and XML) широко используется в WordPress для динамического обновления контента без перезагрузки страницы. Однако чрезмерное или нерациональное использование AJAX-запросов может замедлять сайт, увеличивать нагрузку на сервер и ухудшать пользовательский опыт. В этой статье мы подробно рассмотрим, как отключить ненужные AJAX-запросы в WordPress для оптимизации скорости сайта, а также приведем практические примеры с кодом и плагинами.

Что такое AJAX в WordPress и почему его стоит отключать

AJAX-запросы в WordPress выполняются с помощью специального файла admin-ajax.php, который обрабатывает асинхронные запросы от фронтенда и бэкенда. Многие плагины и темы используют AJAX для обновления контента, отправки форм, загрузки постов и других операций.

Если на сайте активно работают несколько плагинов с AJAX, это может привести к:

  • Увеличению времени отклика сервера;
  • Росту количества запросов на сервер;
  • Замедлению загрузки страниц для пользователей;
  • Потере производительности при пиковых нагрузках.

Поэтому отключение ненужных AJAX-запросов — эффективный способ ускорить сайт без потери функционала.

Как определить, какие AJAX-запросы можно отключить

Перед тем, как отключать AJAX, нужно понять, какие именно запросы загружают сайт. Для этого:

  1. Откройте браузер, перейдите на сайт и запустите Инструменты разработчика (F12).
  2. Перейдите на вкладку «Network» (Сеть).
  3. Отфильтруйте запросы по admin-ajax.php.
  4. Просмотрите, какие плагины или темы выполняют эти запросы (обратите внимание на параметры action и другие данные).

После этого вы сможете понять, какие AJAX-запросы отвечают за какую функциональность, и отключить те, которые не нужны.

Отключение стандартных AJAX-запросов WordPress, которые не используются

Некоторые стандартные AJAX-действия WordPress загружаются автоматически и могут быть отключены, если не используются. Например, AJAX для сердечек (like), обновления профиля, подсказок и т.д.

Для отключения конкретных AJAX-действий можно использовать фильтр wp_ajax_{action} с функцией, которая возвращает ошибку или просто завершает выполнение.

Пример: отключение AJAX для сердечек (like) в WordPress

add_action('wp_ajax_nopriv_clearfy_disable_heartbeat', 'clearfy_disable_heartbeat');
add_action('wp_ajax_clearfy_disable_heartbeat', 'clearfy_disable_heartbeat');
function clearfy_disable_heartbeat() {
    wp_die(); // Завершаем запрос без выполнения
}

// Отключаем Heartbeat API
add_action('init', function() {
    wp_deregister_script('heartbeat');
});

Этот код отключит Heartbeat API, который часто работает через AJAX и может нагружать сервер.

Отключение AJAX-запросов в популярных плагинах

Многие плагины добавляют собственные AJAX-запросы. Если вы не используете их функционал, рекомендуется отключать ненужные запросы.

Пример: отключение AJAX-запросов Contact Form 7

Contact Form 7 использует AJAX для отправки форм. Если вы хотите отключить AJAX и сделать отправку формы стандартной (перезагрузка страницы), добавьте следующий код:

add_filter('wpcf7_load_js', '__return_false');
add_filter('wpcf7_load_css', '__return_false');

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

Пример: отключение AJAX-запросов WooCommerce

WooCommerce активно использует AJAX для обновления корзины, фильтров и категорий. Отключить AJAX полностью не рекомендуется, но можно ограничить некоторые запросы.

add_action('wp_enqueue_scripts', function() {
    if (is_shop() || is_product_category()) {
        wp_dequeue_script('wc-cart-fragments'); // Отключаем AJAX обновление корзины
    }
});

Этот код отключит AJAX обновление корзины на страницах магазина, что уменьшит количество запросов, но при этом оставит другую функциональность WooCommerce.

Создание собственного плагина для контроля AJAX-запросов на сайте clearfy.ru

Для удобства управления AJAX-запросами можно создать простой плагин, который будет отключать ненужные действия.

Пример минимального плагина clearfy-disable-ajax.php:

<?php
/**
 * Plugin Name: Clearfy Disable AJAX
 * Description: Отключает ненужные AJAX-запросы для ускорения сайта
 * Version: 1.0
 * Author: Clearfy
 */

// Отключаем Heartbeat API
add_action('init', function() {
    wp_deregister_script('heartbeat');
});

// Отключаем Cart Fragments WooCommerce
add_action('wp_enqueue_scripts', function() {
    if (class_exists('WooCommerce')) {
        wp_dequeue_script('wc-cart-fragments');
    }
});

// Отключаем AJAX Contact Form 7
add_filter('wpcf7_load_js', '__return_false');
add_filter('wpcf7_load_css', '__return_false');

// Отключение других AJAX действий можно добавить здесь
?>

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

Дополнительные советы по оптимизации AJAX в WordPress

Помимо отключения ненужных запросов, стоит учитывать следующие практики:

  • Кеширование AJAX-ответов с помощью Transients API или внешнего кеша.
  • Использование REST API вместо admin-ajax.php, так как REST API работает быстрее и эффективнее.
  • Минимизация и оптимизация JS-скриптов, вызывающих AJAX.
  • Мониторинг запросов с помощью плагинов типа Query Monitor.

Эти методы помогут не только отключить лишние запросы, но и снизить нагрузку на сервер в целом.

Выводы

Отключение ненужных AJAX-запросов — действенный способ ускорить WordPress-сайт, уменьшить нагрузку на сервер и улучшить пользовательский опыт. Главное — внимательно анализировать, какие запросы действительно нужны, а какие можно отключить без потери функционала. Используйте приведенные примеры кода и создавайте собственные решения для оптимизации AJAX на вашем сайте clearfy.ru.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как удалить неиспользуемые виджеты в WooCommerce без риска для сайта
18.04.2026
Как отключить AJAX в WordPress для ускорения сайта
09.12.2025
Удаление дублей записей в WordPress по разным условиям
12.12.2025
Как удалить ненужные вариации WooCommerce по условию без риска
21.05.2026
Как отключить PHP error notices в WordPress: практические методы и примеры
09.03.2026
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее