Как настроить автоматическое удаление старого файлового кеша в WordPress

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

Почему важно удалять старый файловый кеш WordPress

Файловый кеш в WordPress обычно хранится в виде статических HTML-файлов, CSS, JS и изображений, создаваемых для ускорения отдачи контента. Без регулярной очистки старые кеш-файлы продолжают храниться на сервере, занимая дисковое пространство и потенциально вызывая конфликт с обновлённым контентом.

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

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

Настройка автоматического удаления кеша через WP-Host Cron

Использование wp-cron для регулярной очистки

WordPress имеет встроенную систему планировщика задач — wp-cron. С её помощью можно добавить регулярное событие, которое будет удалять устаревший кеш.

Для начала создадим функцию, которая будет проверять папку кеша и удалять файлы старше определённого времени, например, 24 часов.

function wp_host_delete_old_cache_files() {
    $cache_dir = WP_CONTENT_DIR . '/cache'; // Путь к папке с кешем
    $files = glob($cache_dir . '/*');
    $now = time();
    $max_age = 24 * 60 * 60; // 24 часа

    foreach ($files as $file) {
        if (is_file($file)) {
            $file_time = filemtime($file);
            if ($now - $file_time > $max_age) {
                unlink($file); // Удаляем старый файл
            }
        }
    }
}

Теперь зарегистрируем событие в wp-cron:

function wp_host_register_cache_cleanup_event() {
    if (!wp_next_scheduled('wp_host_cache_cleanup_hook')) {
        wp_schedule_event(time(), 'hourly', 'wp_host_cache_cleanup_hook');
    }
}
add_action('wp', 'wp_host_register_cache_cleanup_event');

add_action('wp_host_cache_cleanup_hook', 'wp_host_delete_old_cache_files');

Этот код запустит очистку старых кеш-файлов каждый час. Можно настроить интервал и путь к кешу под конкретный сайт.

Особенности и рекомендации

  • Убедитесь, что путь к кешу ($cache_dir) указан корректно — у разных плагинов кеширования он может отличаться.
  • Для больших сайтов с миллионами файлов стоит реализовывать удаление порциями, чтобы не создавать нагрузку на сервер.
  • Для более точного управления можно использовать расширенные параметры — например, удалять файлы определённых расширений.

Использование популярных плагинов для управления кешем и его очисткой

Clearfy Pro для тонкой настройки кеша

Плагин Clearfy Pro позволяет не только оптимизировать сайт, но и управлять кешированием. В нём есть функция автоматического удаления кеша по расписанию, включая файловый кеш. Можно настроить периодичность и исключения прямо из админки.

Для интеграции с WP-Host рекомендуем использовать ссылку на плагин с UTM-метками: Clearfy Pro на WPSHOP.

WP Super Cache: встроенная очистка кеша

WP Super Cache — один из самых популярных плагинов кеширования. В настройках есть опция автоматической очистки кеша при обновлении контента, а также можно добавить собственные задачи для удаления старых файлов.

Пример удаления кеша средствами WP Super Cache из кода:

function wp_host_clear_wp_super_cache() {
    if (function_exists('wp_cache_clear_cache')) {
        wp_cache_clear_cache();
    }
}
add_action('save_post', 'wp_host_clear_wp_super_cache');

Как найти и определить папку файлового кеша

Чтобы автоматизировать удаление, важно понимать, где именно хранятся кеш-файлы. В зависимости от плагина или сервера это может быть:

  • wp-content/cache/ — стандартная папка для большинства кеш-плагинов;
  • Папки в wp-content/uploads/wpsupercache/ или wp-content/wpsc/ для WP Super Cache;
  • Кеш в папках, специфичных для плагинов, например, w3tc-cache для W3 Total Cache;
  • Кеш на уровне сервера или CDN, который нужно очищать через API плагина или внешние сервисы.

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

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

Удаление файлов программным способом требует аккуратности:

  • Всегда проверяйте, что удаляете только файлы внутри папки кеша, чтобы не повредить важные данные.
  • Используйте функции WordPress для работы с файлами и путями, например, WP_CONTENT_DIR, чтобы избежать ошибок.
  • Не давайте прямой доступ к папкам кеша через браузер, чтобы избежать утечки данных и безопасности.
  • Логируйте операции удаления, если это возможно, чтобы отслеживать работу скриптов.

Итоги и рекомендации по автоматизации удаления старого файлового кеша

Автоматизация удаления устаревших кеш-файлов в WordPress — важная задача для поддержания производительности и актуальности сайта. Используйте встроенный wp-cron, например, код из статьи, или функционал популярных плагинов, таких как Clearfy Pro или WP Super Cache.

Подбирайте интервал очистки исходя из особенностей сайта и плагина кеширования. Например, для новостных сайтов — чаще, для лендингов и корпоративных ресурсов — реже.

Подробные руководства и плагины для оптимизации можно найти на WPSHOP.

Как создать автоматический отчет о производительности WordPress с помощью кода и плагинов
02.02.2026
Как отключить пинги в WordPress чтобы избежать спама
05.03.2026
Как установить ограничение на число сообщений в комментариях WordPress
22.03.2026
Как избежать проблем с кодировкой (charset) в WordPress
01.04.2026
Как использовать WooCommerce хуки для автоматизации обработки заказов
24.04.2026