Как отключить кэш в WordPress для разработчиков

Кэширование в WordPress — важный механизм для ускорения загрузки сайта, но во время разработки оно часто мешает видеть актуальные изменения. В этой статье разберём, как полностью отключить кэш в WordPress, чтобы разработка и отладка проходили без проблем.

Виды кэширования в WordPress и почему их нужно отключать

Сначала определимся, какие типы кэша могут быть задействованы:

  • Кэш браузера — хранит статические файлы на стороне клиента.
  • Кэш плагинов — например, WP Super Cache, W3 Total Cache, LiteSpeed Cache.
  • Объектный кэш — кэширует запросы к базе данных в оперативной памяти.
  • Кэш на стороне сервера — например, OPCache, Memcached или Redis.
  • Кэш CDN — если используется сеть доставки контента (Cloudflare и пр.).

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

Отключение кэша плагинов

Большинство популярных плагинов кэширования имеют функцию отключения или режим разработки. Рассмотрим на примере WP Super Cache и W3 Total Cache:

  • WP Super Cache: в настройках поставьте галочку «Кэширование выключено» или включите режим «Режим разработки».
  • W3 Total Cache: в разделе «Общие настройки» отключите все типы кэша (Page Cache, Minify, Database Cache, Object Cache, Browser Cache).

Если у вас другой плагин, ищите похожие опции или временно деактивируйте плагин.

Принудительное отключение кэша через код

Для плагинов, которые не имеют удобного режима, можно добавить в functions.php вашей темы или в отдельный плагин следующий код:

function wpacademy_disable_cache() {
    if ( defined('WP_CACHE') ) {
        define('WP_CACHE', false);
    }
}
add_action('init', 'wpacademy_disable_cache');

Однако этот способ не всегда работает, так как константа WP_CACHE обычно определяется в wp-config.php. Для полной уверенности лучше отключить кэш в плагинах или временно их деактивировать.

Отключение объектного кэша и кеша базы данных

Объектный кэш часто используют Redis, Memcached или встроенный в WordPress transient API. Чтобы отключить объектный кэш, можно добавить в wp-config.php:

define('WP_REDIS_DISABLED', true);
define('WP_CACHE', false);

Для transient API можно сбросить все сохранённые транзиенты командой в WP-CLI:

wp transient delete --all

Или программно, например:

function wpacademy_delete_all_transients() {
    global $wpdb;
    $wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE '_transient_%'");
}
add_action('init', 'wpacademy_delete_all_transients');

Отключение кэширования на уровне сервера и OPCache

Если на сервере включен OPCache, изменения PHP-кода могут не отображаться сразу. Для отключения OPCache на время разработки:

  • В файле php.ini установите opcache.enable=0.
  • Или добавьте в .htaccess (если поддерживается):
php_flag opcache.enable Off

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

Отключение браузерного кэша и CDN

Для отключения кэша браузера во время разработки можно:

  • Включить в браузере режим разработчика (F12), где есть опция «Disable cache».
  • Добавлять к URL параметр, например ?ver=12345, чтобы браузер считал это новым ресурсом.

Если у вас подключен CDN, например Cloudflare, временно переключите его в режим разработчика (Development Mode). Это отключит кэш CDN на 3 часа.

Полное отключение кэша в WordPress: пример готового кода

Ниже пример функции, которая отключает большинство кэшей в WordPress на время разработки:

function wpacademy_disable_all_cache() {
    // Отключаем WP_CACHE константу
    if ( defined('WP_CACHE') ) {
        define('WP_CACHE', false);
    }

    // Отключаем транзиенты
    global $wpdb;
    $wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE '_transient_%'");

    // Отключаем объектный кэш
    if ( function_exists('wp_cache_flush') ) {
        wp_cache_flush();
    }
}
add_action('init', 'wpacademy_disable_all_cache');

Такой подход подходит для локальной разработки или staging-среды.

Полезные плагины для управления кэшем в процессе разработки

Для удобства можно использовать специализированные плагины, которые помогают временно отключать кэш:

  • Clearfy Pro — позволяет быстро переключать режимы кэширования и оптимизации, что удобно при разработке. Подробнее на wpshop.ru.
  • My Popup

Итоги и рекомендации

Отключение кэша — обязательный этап для корректной разработки и отладки WordPress-сайтов. Обязательно отключайте все уровни кэширования:

  • Плагины кэширования
  • Объектный кэш и транзиенты
  • Серверный кэш и OPCache
  • Браузерный кэш и CDN

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

Если хотите максимально автоматизировать этот процесс, попробуйте плагин Clearfy Pro — он умеет гибко управлять кэшированием и оптимизацией под ваши нужды.

Оптимизация базы данных WordPress: удаление старых версий и сбор статистики
09.11.2025
Как добавить поддержку виджетов Gutenberg в собственную тему WordPress
08.01.2026
Как сделать автоматический импорт данных в WordPress из CSV с помощью WPAcademy
11.01.2026
Как создать автопостинг в WordPress с использованием WPRemark
30.01.2026
Как использовать REST API в WordPress для создания кастомных эндпоинтов
25.11.2025