Кэширование WordPress: инфраструктурный уровень
Помимо трёх механизмов кэширования в ядре (страничный кэш, объектный кэш, transients), скорость WordPress зависит от инфраструктурного уровня: браузера, PHP-движка и сервера перед веб-сервером.
Для немедленного эффекта установите плагин страничного кэша: WP Rocket (премиум), WP Super Cache (бесплатный) или Surge (бесплатный, zero-config). Подробнее об общих принципах оптимизации — Оптимизация WordPress.
Общая картина всех видов кэша сайта, включая сравнение с другими платформами (Bitrix, Astro, Next.js): Кэширование сайтов.
Браузерный кэш
Заголовок раздела «Браузерный кэш»Браузерный кэш снижает количество запросов к серверу за счёт хранения статических файлов (изображения, CSS, JS) на компьютере посетителя. Сервер отправляет заголовки Cache-Control (особенно max-age) и Expires, а браузер сверяется через ETag вместо повторной загрузки — сервер отвечает 304 Not Modified вместо 200 OK с телом файла.
Пример заголовков в .htaccess
Заголовок раздела «Пример заголовков в .htaccess»<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/jpg "access plus 1 year" ExpiresByType image/jpeg "access plus 1 year" ExpiresByType image/gif "access plus 1 year" ExpiresByType image/png "access plus 1 year" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month"</IfModule>Большинство хостингов (Beget, Timeweb, REG.RU) и плагинов кэширования (WP Rocket, W3 Total Cache) добавляют эти заголовки автоматически — писать правила вручную нужно только на VPS без панели управления.
Объектный кэш в WordPress
Заголовок раздела «Объектный кэш в WordPress»WordPress имеет встроенный API объектного кэша через класс WP_Object_Cache. Для подключения внешнего движка (Redis, Memcached) используйте drop-in плагин object-cache.php в wp-content/.
Самый простой путь — плагин Redis Object Cache: он устанавливает drop-in автоматически и добавляет экран диагностики в админке. Работает на серверах с Redis (например, Beget, Timeweb и большинство VPS). Хорошо показывает себя на больших сайтах со сложной логикой и высокой нагрузкой.
// Базовое использование WP Object Cache APIwp_cache_set('my_key', $data, 'my_group', 3600);$data = wp_cache_get('my_key', 'my_group');wp_cache_delete('my_key', 'my_group');Полный разбор API, групп (глобальные, непостоянные) и нюансов опций: Кэширование объектов.
Серверный кэш
Заголовок раздела «Серверный кэш»Серверный кэш сложнее плагинного, но необходим для высоконагруженных сайтов.
Opcode-кэш
Заголовок раздела «Opcode-кэш»Ускоряет выполнение PHP, сохраняя скомпилированный байт-код в памяти:
Reverse Proxy
Заголовок раздела «Reverse Proxy»Обратный прокси-сервер перед веб-сервером WordPress:
- Varnish — мощный HTTP-акселератор, отлично сочетается с плагинами кэширования (W3TC, WP Super Cache)
- Nginx FastCGI Cache — кэширование на уровне веб-сервера без дополнительного ПО
Схема многоуровневого кэширования
Заголовок раздела «Схема многоуровневого кэширования»Пользователь → CDN → Varnish (reverse proxy) → Nginx/Apache (opcode cache) → WordPress (object cache: Redis) → MySQLВыбор стратегии
Заголовок раздела «Выбор стратегии»| Уровень сайта | Рекомендация |
|---|---|
| Блог на shared-хостинге | Плагин кэширования + браузерный кэш |
| Средний сайт на VPS | Плагин + OPcache + объектный кэш (Redis) |
| Высоконагруженный проект | Varnish/Nginx FastCGI + Redis + CDN + OPcache |
Кэширование с WooCommerce
Заголовок раздела «Кэширование с WooCommerce»WooCommerce требует особой настройки кэширования — корзина, чекаут и личный кабинет должны оставаться динамическими.
Подробнее: Кэширование в WooCommerce.
Материалы и источники
Заголовок раздела «Материалы и источники»- WordPress Developer Handbook — Cache — официальная документация
- Основы кэширования в WordPress — Константин Ковшенин, WP Magazine
- Кэширование объектов в WordPress — Константин Ковшенин, WP Magazine
- Кеширование WordPress: WP Super Cache, WP Rocket, Surge — WPCraft
- Core Caching Concepts in WordPress
- Оптимизация WordPress — общий обзор факторов производительности
- PHP-оптимизация — настройка PHP для WordPress
- Кэширование в WordPress: обзор — раздел базы знаний про механизмы кэширования в ядре