Почему важно уметь удалять кеш в WordPress
Кеширование — это эффективный способ ускорить загрузку сайта, но иногда при разработке и обновлении контента кеш может мешать видеть актуальные изменения. Особенно это актуально при работе с кастомными темами и плагинами, когда требуется проверить изменения без задержек. Поэтому умение быстро и правильно очистить кеш — обязательный навык для любого разработчика и администратора WordPress.
В этой статье мы рассмотрим, какие типы кеша бывают в WordPress и как их удалить вручную и с помощью плагинов. А также покажем, как добавить собственные функции для очистки кеша прямо в код темы или плагина.
Типы кеша в WordPress и их очистка
Кеш браузера и CDN
Первый уровень кеша — это кеш браузера пользователя и CDN (Content Delivery Network), если он используется. Чтобы обновить контент, нужно очистить кеш CDN, например, в Cloudflare или другом сервисе. Также можно добавить заголовки, запрещающие кеширование для определенных страниц при разработке.
Объектный кеш (Object Cache)
Объектный кеш хранит результаты запросов к базе данных в памяти (например, с помощью Redis или Memcached). Для очистки объектного кеша можно использовать административные инструменты или команды в коде.
Кеш страниц (Page Cache)
Кеш страниц — это сохранённые HTML-страницы для быстрого отдачи. Часто его реализуют через плагины типа WP Rocket или W3 Total Cache. Очистка кеша в таких плагинах обычно доступна через админ-панель.
Практические способы очистки кеша в WordPress
1. Очистка кеша через административную панель плагинов
Самый простой способ — воспользоваться встроенными кнопками очистки кеша в популярных плагинах:
- WP Rocket: В админ-панели перейдите в раздел «WP Rocket» → «Инструменты» и нажмите «Очистить кеш». Это удалит кеш страниц и минифицированные файлы.
- W3 Total Cache: В меню «Performance» выберите «Dashboard» и нажмите кнопку «Empty All Caches».
- LiteSpeed Cache: В разделе «LiteSpeed Cache» выберите «Панель» и нажмите «Очистить кеш».
Также некоторые плагины добавляют кнопку очистки кеша в верхней панели администратора для удобства.
2. Удаление кеша вручную через FTP или хостинг
Если доступ к админке отсутствует, можно удалить кеш вручную:
- Для WP Rocket — папка
wp-content/cache/wp-rocket/. - Для W3 Total Cache — папка
wp-content/cache/иwp-content/w3tc-config/. - LiteSpeed Cache —
wp-content/litespeed/.
Просто удалите содержимое этих папок, чтобы сбросить кеш. Помните, что после этого первый запрос к сайту будет медленнее.
3. Очистка объектного кеша программно
Если у вас настроен объектный кеш с Redis или Memcached, очистить его можно через код. Пример функции для очистки кеша в WordPress с использованием стандартной функции wp_cache_flush():
function wpbegin_clear_object_cache() {
if ( function_exists('wp_cache_flush') ) {
wp_cache_flush();
}
}Вы можете вызвать эту функцию после обновления данных или добавить в админку кнопку для её вызова.
Как добавить в тему или плагин кнопку для очистки кеша
Часто удобно иметь в админ-панели кнопку, которая быстро очищает кеш без захода в настройки плагина. Вот пример добавления кастомной кнопки в меню админки для очистки объектного кеша:
add_action('admin_menu', 'wpbegin_add_clear_cache_menu');
function wpbegin_add_clear_cache_menu() {
add_menu_page('Очистка кеша', 'Очистка кеша', 'manage_options', 'wpbegin-clear-cache', 'wpbegin_clear_cache_page');
}
function wpbegin_clear_cache_page() {
if ( isset($_POST['wpbegin_clear_cache']) && check_admin_referer('wpbegin_clear_cache_action') ) {
wp_cache_flush();
echo '<div class="updated notice">Кеш успешно очищен.</div>';
}
echo '<h1>Очистка кеша</h1>';
echo '<form method="post">';
wp_nonce_field('wpbegin_clear_cache_action');
echo '<input type="submit" name="wpbegin_clear_cache" class="button button-primary" value="Очистить кеш" />';
echo '</form>';
}Этот код добавляет новый пункт меню «Очистка кеша», где после нажатия кнопки выполняется очистка объектного кеша. Аналогично можно вызывать очистку кеша плагинов, если у них есть соответствующие функции.
Полезные плагины для очистки кеша с расширенными возможностями
Clearfy Pro
Clearfy Pro — это многофункциональный плагин для оптимизации WordPress, в том числе с удобным управлением кешем. Он умеет очищать разные типы кеша, отключать ненужные скрипты и многое другое. Полезен для комплексной работы с производительностью.
WP Rocket
WP Rocket автоматизирует кеширование, но позволяет гибко очищать кеш через админку, а также программно через API. Он поддерживает очистку кеша по расписанию и после публикации постов.
Что делать, если кеш не очищается
Иногда бывает, что после очистки кеша изменения не видны. Проверьте следующие моменты:
- Кеш CDN — очистите кеш на уровне сервиса (Cloudflare, Sucuri и т.п.).
- Кеш браузера — попробуйте открыть сайт в режиме инкогнито.
- Серверный кеш — некоторые хостинги используют кеширование на уровне сервера, например, NGINX FastCGI, Redis. Обратитесь в поддержку или почистите кеш через панель хостинга.
- Проверьте, не используется ли кеширование на уровне плагинов безопасности или оптимизации.
Заключение: интеграция очистки кеша в рабочие процессы
Регулярная очистка кеша — важный этап при разработке и поддержке сайта на WordPress. Используйте плагины с удобными интерфейсами, но не забывайте о возможности программного управления кешем, чтобы автоматизировать процессы. Добавление собственных функций очистки кеша в тему или плагин поможет быстро решать проблемы с отображением актуального контента.