Проблема: дефолтный WordPress — медленный и голодный
WordPress с дефолтными настройками медленный: каждый запрос к странице выполняет 60–120 SQL-запросов, загружает десятки плагинов и генерирует HTML заново. Типичный сайт на WordPress выдаёт TTFB 1–3 секунды, LCP превышает 4 секунды — посетители уходят, не дождавшись загрузки. Мы ежедневно сталкиваемся с такими проектами и знаем, как это исправить. Оптимизация производительности WordPress — это не разовая акция, а системный подход, который даёт измеримые результаты. Свяжитесь с нами для проведения аудита производительности.
Наша методика включает комплекс мер: от настройки OPcache и Redis до конвертации изображений в WebP и оптимизации SQL-запросов. За годы работы мы провели более 50 аудитов и гарантируем снижение TTFB до 200 мс и Core Web Vitals в зелёной зоне. Как показывает практика, даже базовая оптимизация окупается за 2–3 месяца за счёт сокращения нагрузки на хостинг.
Согласно исследованию Pingdom, каждый лишний 100 мс TTFB снижает конверсию на 1%.
Аудит производительности WordPress: что тормозит ваш сайт
Перед оптимизацией — диагностика. Инструменты:
- Query Monitor — показывает все SQL-запросы и хуки на каждой странице
- New Relic или Tideways — профилировщик PHP для production
- GTmetrix / PageSpeed Insights — внешние метрики Core Web Vitals
Типичные причины медленной работы:
- Отсутствие PHP OPcache
- Нет object cache (Redis/Memcached)
- Медленные плагины с неоптимальными WP_Query
- Таблица
wp_optionsс тысячами autoload-опций (некоторые размером >1 МБ) - Огромная таблица
wp_postmeta(сотни тысяч записей) - Отсутствие кэширования страниц
Как OPcache и Redis уменьшают количество SQL-запросов?
Настройка OPcache
# /etc/php/8.3/fpm/conf.d/10-opcache.ini opcache.enable=1 opcache.memory_consumption=256 opcache.interned_strings_buffer=16 opcache.max_accelerated_files=10000 opcache.revalidate_freq=0 opcache.validate_timestamps=0 opcache.fast_shutdown=1 opcache.jit=tracing opcache.jit_buffer_size=64m Согласно документации PHP, эти настройки дают 30–50% снижение времени выполнения PHP.
Redis для object cache
Установите Redis через apt, активируйте плагин Redis Cache. Пропишите в wp-config.php:
define('WP_CACHE_KEY_SALT', 'yourdomain.com_'); define('WP_REDIS_HOST', '127.0.0.1'); define('WP_REDIS_PORT', 6379); define('WP_REDIS_DATABASE', 0); define('WP_REDIS_TIMEOUT', 1); define('WP_REDIS_READ_TIMEOUT', 1); Redis кэширует результаты WP_Query, опции (get_option), данные пользователей. На одном проекте с 2000 постами и 50 плагинами Redis снизил количество SQL-запросов на страницу с 90 до 12.
Почему Nginx FastCGI Cache лучше плагинов кэширования?
Для высоконагруженных сайтов используем Nginx FastCGI Cache — он минует PHP и WordPress полностью.
fastcgi_cache_path /var/cache/nginx/wordpress levels=1:2 keys_zone=WORDPRESS:100m inactive=60m; fastcgi_cache_key "$scheme$request_method$host$request_uri"; server { location ~ \.php$ { fastcgi_cache WORDPRESS; fastcgi_cache_valid 200 301 302 60m; fastcgi_cache_bypass $skip_cache; fastcgi_no_cache $skip_cache; set $skip_cache 0; if ($http_cookie ~* "wordpress_logged_in|woocommerce_cart_hash") { set $skip_cache 1; } if ($request_method = POST) { set $skip_cache 1; } fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; } } Сравнение Nginx и плагинов:
| Параметр | Nginx FastCGI Cache | Плагин (WP Super Cache) |
|---|---|---|
| TTFB | < 10 мс | 50–200 мс |
| Нагрузка на сервер | Минимальная | Выше (PHP + WordPress) |
| Сложность настройки | Требует root-доступа | Простая |
| Совместимость с динамикой | Сложнее обходить | Легко настраивается |
Кэшированные страницы отдаются с TTFB < 10 мс. Nginx FastCGI Cache в 10–20 раз быстрее плагинов.
Очистка базы данных и оптимизация изображений
Очистка БД
-- Удаление старых ревизий (оставить последние 5 на пост) DELETE p FROM wp_posts p LEFT JOIN ( SELECT ID FROM wp_posts WHERE post_type = 'revision' ORDER BY post_date DESC LIMIT 5 ) keep ON p.ID = keep.ID WHERE p.post_type = 'revision' AND keep.ID IS NULL; -- Удаление орфанных postmeta DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts p ON p.ID = pm.post_id WHERE p.ID IS NULL; -- Анализ autoload options SELECT option_name, LENGTH(option_value) as size FROM wp_options WHERE autoload = 'yes' ORDER BY size DESC LIMIT 20; -- Отключить autoload для ненужных опций UPDATE wp_options SET autoload = 'no' WHERE option_name IN ('_transient_some_plugin_cache', 'some_large_option'); WebP-конвертация
Подключаем автоматическую конвертацию при загрузке медиафайлов через плагин ShortPixel или свой обработчик на Imagick. Это позволяет без ручной работы перевести весь контент в современный формат, экономя до 30% трафика.
Какие ещё техники ускорения мы применяем?
Дополнительно настраиваем lazy loading для изображений, минификацию CSS/JS (через Autoptimize или сборку на Webpack), подключаем CDN (Cloudflare) и используем WebP-файлы с srcset. Комплексный подход даёт максимальный прирост скорости.
Пошаговый план оптимизации
- Аудит: профилирование с Query Monitor и New Relic.
- OPcache: включить и настроить JIT.
- Redis: установить, настроить object cache.
- Nginx-кэш: настроить FastCGI Cache с обходом для авторизованных.
- БД: очистить ревизии, orphaned meta, отключить autoload для крупных опций.
- Изображения: конвертировать в WebP, настроить lazy loading.
- Мониторинг: проверка Core Web Vitals через PageSpeed Insights.
Что входит в работу и какие результаты?
- Детальный аудит производительности с отчётом
- Настройка OPcache и Redis
- Конфигурация Nginx FastCGI Cache (или другого кэша)
- Очистка и оптимизация базы данных
- Минификация CSS/JS, конвертация изображений в WebP
- Рекомендации по улучшению LCP, CLS, INP
- Гарантия: TTFB < 200 мс и Core Web Vitals в зелёной зоне
- Документация и обучение команды
Типичные результаты:
| Метрика | До | После |
|---|---|---|
| TTFB (без кэша) | 800–2000 мс | 150–400 мс |
| TTFB (с FastCGI кэшем) | — | 5–15 мс |
| SQL-запросов на страницу | 60–120 | 5–15 |
| LCP | 3–6 с | 1–2 с |
Сроки и опыт
Базовая оптимизация (OPcache, Redis, очистка БД, кэш страниц) — 2–3 дня. Полный аудит с профилировкой и оптимизацией медленных запросов — 5–7 дней. Стоимость рассчитывается индивидуально в зависимости от сложности.
Многолетний опыт и 50+ успешных проектов подтверждают эффективность нашего подхода. Закажите аудит сегодня и получите гарантированный результат.







