Кэширование — важный инструмент для ускорения сайта на WordPress, но иногда возникает необходимость быстро удалить кэш, чтобы изменения сразу отобразились. В этой статье подробно разберём, как удалить кэш в WordPress, какие есть плагины для управления кэшированием и как реализовать собственные функции для очистки кэша с помощью кода.
Почему важно уметь удалять кэш в WordPress
Кэширование позволяет хранить часто используемые данные и страницы в памяти, чтобы не выполнять тяжелые запросы к базе данных и не генерировать страницу заново при каждом заходе пользователя. Это ускоряет загрузку сайта и снижает нагрузку на сервер.
Однако при внесении изменений в дизайн, контент или функционал кэшированные данные могут не обновляться мгновенно. Пользователи видят устаревшую версию сайта, а вы не видите результатов своих изменений. Поэтому важно уметь оперативно удалять кэш.
Особенно актуально это при работе с плагинами кэширования, CDN и серверным кэшированием. Понимание и контроль кэширования помогает избежать многих проблем с отображением и функционалом сайта.
Основные способы удалить кэш в WordPress
Удаление кэша в WordPress можно разделить на несколько подходов:
- Использование плагинов кэширования: большинство популярных плагинов имеют встроенные кнопки и функции для очистки кэша.
- Удаление кэша вручную: удаление файлов кэша через FTP или файловый менеджер.
- Программное удаление кэша через функции: создание своих функций для очистки кэша, что полезно при кастомных решениях.
Каждый способ имеет свои преимущества и подойдёт в разных ситуациях.
Удаление кэша с помощью популярных плагинов
Рассмотрим несколько популярных плагинов и как в них удалить кэш.
WP Super Cache
Этот плагин создает статические HTML-файлы для ускорения загрузки. Чтобы удалить кэш, зайдите в админку WordPress в раздел Настройки > WP Super Cache и нажмите кнопку Удалить кэш. Это очистит все сохранённые HTML-файлы.
W3 Total Cache
Очень мощный плагин с множеством настроек. Для очистки кэша используйте пункт меню Performance > Dashboard и нажмите Empty All Caches. Также можно настроить автоматическую очистку при публикации новых записей.
WP Rocket
Премиум-плагин с удобным интерфейсом. Очистка кэша происходит через кнопку Clear Cache в панели инструментов админки или в настройках плагина.
Удаление кэша вручную через FTP или файловый менеджер
Если плагин не предоставляет удобных средств или вы хотите полностью удалить все кэшированные файлы, можно сделать это вручную.
Подключитесь по FTP или через панель хостинга к папке wp-content/cache/. В ней обычно хранятся файлы кэша различных плагинов. Просто удалите содержимое этой папки.
Также кэш может храниться в папках плагинов, например:
wp-content/w3tc-cache/для W3 Total Cachewp-content/uploads/cache/для некоторых плагинов
Удаление этих файлов приведёт к полной очистке кэша.
Как программно удалить кэш в WordPress: примеры функций
Иногда необходимо добавить автоматическую очистку кэша при определённых событиях — обновлении записи, смене темы и т.д. Для этого можно использовать PHP-функции.
Удаление кэша WP Super Cache через код
WP Super Cache предоставляет функцию wp_cache_clear_cache(), которая удаляет кэш. Чтобы использовать её, добавьте следующий код в файл functions.php вашей темы или в плагин:
function wpbloger_clear_wp_super_cache() {
if (function_exists('wp_cache_clear_cache')) {
wp_cache_clear_cache();
}
}
add_action('save_post', 'wpbloger_clear_wp_super_cache');Этот код будет очищать кэш при сохранении любой записи.
Очистка кэша W3 Total Cache через код
W3 Total Cache не предоставляет официальной функции, но можно вызвать метод класса для очистки:
function wpbloger_clear_w3_total_cache() {
if (class_exists('W3_Plugin_TotalCacheAdmin')) {
$w3tc = new W3_Plugin_TotalCacheAdmin();
$w3tc->flush_all();
}
}
add_action('save_post', 'wpbloger_clear_w3_total_cache');Этот код очистит весь кэш W3 Total Cache после сохранения записи.
Удаление объектного кэша WordPress
Если используется объектный кэш (например, Redis или Memcached), можно очистить его с помощью функции wp_cache_flush():
function wpbloger_flush_object_cache() {
if (function_exists('wp_cache_flush')) {
wp_cache_flush();
}
}
add_action('save_post', 'wpbloger_flush_object_cache');Это полезно, когда данные кэшируются на уровне объекта, и нужно сбросить их при обновлениях.
Советы по работе с кэшированием в WordPress
Настройте автоматическую очистку кэша
Большинство плагинов кэширования позволяют настроить автоматическую очистку при публикации или обновлении постов, комментариев, смене темы и других событиях. Это избавит вас от необходимости очищать кэш вручную и обеспечит пользователям актуальный контент.
Проверьте настройки ваших плагинов и активируйте эти опции.
Будьте аккуратны с кэшированием для администраторов
При работе над сайтом администраторы должны видеть актуальные изменения. Многие плагины позволяют отключить кэширование для залогиненных пользователей с ролью администратора, чтобы не мешать разработке.
Убедитесь, что эта настройка включена, если вы активно меняете сайт и не хотите видеть устаревший контент.
Очистка кэша CDN и серверного кэша
Если вы используете CDN (Content Delivery Network) или серверное кэширование (например, Varnish), удаление кэша в WordPress не всегда достаточно. В таких случаях надо очистить кэш и на стороне CDN или сервера.
Для популярных CDN, таких как Cloudflare, есть API и плагины для автоматической очистки кэша при обновлениях сайта. Это важно настроить для полной актуальности данных.
Выводы и рекомендации
Удаление кэша в WordPress — обязательный навык для разработчика и администратора сайта. Правильное управление кэшированием позволяет быстро вносить изменения и обеспечивать пользователям актуальный и быстрый сайт.
Используйте удобные плагины с функциями очистки, при необходимости удаляйте кэш вручную, а для автоматизации пишите свои функции с использованием API плагинов.
Ниже приведён краткий чеклист действий, которые помогут вам эффективно работать с кэшем:
- Выбирайте плагин кэширования с удобным интерфейсом и автоматической очисткой.
- Настройте исключения кэширования для администраторов и авторизованных пользователей.
- Регулярно очищайте кэш после важных изменений.
- При использовании CDN интегрируйте очистку кэша с вашим WordPress.
- Используйте программные методы для гибкой очистки кэша на уровне кода.