Если WordPress стал заметно медленнее, не обязательно сразу ставить очередной оптимизатор. В большинстве случаев скорость упирается в несколько понятных вещей: лишние скрипты и стили, тяжёлую тему, слишком много запросов к базе, необработанные изображения и слабые настройки сервера. Часть этого можно исправить без плагинов — прямо в теме, на стороне хостинга и в конфигурации сайта.
Ниже — практический порядок действий. Он рассчитан на владельца сайта или вебмастера, который хочет ускорить WordPress без лишнего усложнения и без риска сломать рабочий проект.
С чего начать: сначала найдите, что именно тормозит
Не стоит отключать всё подряд. Сначала посмотрите, где теряется время: в генерации HTML, в загрузке CSS и JS, в картинках или в ответе сервера. Для этого достаточно открыть сайт в браузере и посмотреть вкладку Network в DevTools или прогнать страницу через PageSpeed Insights. Вам не нужен идеальный аудит — достаточно понять, что именно даёт основной вес.
Если долго отвечает сам сервер, проблема обычно не в фронтенде. Если HTML приходит быстро, а страница всё равно открывается медленно, значит, тормозят стили, скрипты, изображения или шрифты. Это важное разделение: оно помогает не тратить время на бесполезные правки.
Что отключить в первую очередь
Самый быстрый выигрыш обычно дают не «ускоряющие» настройки, а отказ от лишнего. В WordPress часто включено больше, чем реально используется на сайте.
Отключите всё, что не нужно на публичной части сайта
Проверьте тему и плагины на предмет функций, которые добавляют лишние запросы и ресурсы:
- иконки и библиотеки, если они используются только в админке;
- встроенные слайдеры и анимации, если они не влияют на контент;
- внешние шрифты в нескольких начертаниях, когда достаточно одного-двух;
- эмодзи-скрипты WordPress, если они не нужны;
- встроенные стили плагинов, которые выводятся на всех страницах, хотя нужны только на одной.
Особенно часто лишнее тянет тема. Многие шаблоны подключают JS и CSS глобально, даже если блок используется только на главной или в отдельном шаблоне. Если тема позволяет отключать отдельные модули, сделайте это в первую очередь.
Уберите лишние эмодзи и embeds, если они не нужны
WordPress по умолчанию добавляет поддержку эмодзи и oEmbed. На современных сайтах это редко критично, но если вы не используете вставку контента с внешних платформ через автоподстановку, часть нагрузки можно убрать. Это не даст магического ускорения, но уменьшит количество лишних запросов и мелких скриптов.
Если вы редактируете тему, отключение можно сделать в functions.php. Перед этим обязательно сделайте резервную копию: ошибка в файле темы может временно уронить сайт.
add_action( 'init', function () {
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
remove_action( 'wp_head', 'wp_oembed_add_host_js' );
} );Этот код убирает только часть лишнего служебного вывода. Если на сайте есть контент, который зависит от oEmbed, проверьте его после изменения.
Оптимизируйте тему, а не только контент
Если тема тяжёлая, никакая точечная чистка не даст большого эффекта. Здесь важны не «красивые» эффекты, а количество ресурсов, которые тема грузит на каждой странице.
Проверьте, не подключается ли один и тот же ресурс несколько раз
Это частая проблема у кастомных тем и сборок на базе нескольких библиотек. Например, тема может подключать jQuery, и при этом плагин делает то же самое в своём варианте. В результате браузер получает лишние запросы и блокировки рендера.
Если у вас есть доступ к коду темы, посмотрите, какие файлы подключаются через wp_enqueue_script() и wp_enqueue_style(). Иногда достаточно убрать дублирующийся файл или перенести его загрузку на конкретный шаблон, а не на весь сайт.
Не грузите тяжёлые блоки и виджеты везде
Слайдеры, карты, галереи, формы и счётчики часто нужны только на отдельных страницах. Если тема или шаблон выводит их глобально, это лишняя нагрузка. Логика простая: всё, что не видно на странице, не должно тянуться на неё автоматически.
Если блок нужен только на главной, проверьте, нельзя ли подключать его только в шаблоне главной страницы. Если это виджет в сайдбаре, подумайте, нужен ли он вообще на мобильной версии.
Изображения почти всегда дают быстрый эффект
Сайт может быть медленным даже при хорошем сервере, если на странице много тяжёлых картинок. Здесь не нужен плагин, чтобы получить заметный результат.
Приведите изображения к реальному размеру
Одна из самых частых ошибок — загрузка картинки 3000 пикселей шириной туда, где она отображается в 800 пикселей. Браузер всё равно покажет её меньше, но скачает исходник целиком. Перед загрузкой уменьшайте изображения до фактического размера, который нужен в шаблоне.
Для большинства контентных сайтов разумно хранить изображения в WebP, если это поддерживается вашим рабочим процессом и не ломает совместимость с текущей аудиторией. WordPress уже умеет отдавать WebP в современных версиях, но конвертация и контроль качества остаются на вашей стороне.
Проверьте lazy load и не перегружайте первый экран
WordPress по умолчанию поддерживает отложенную загрузку изображений через атрибут loading="lazy". Это полезно для картинок ниже первого экрана, но не стоит вешать lazy load на главный баннер или ключевое изображение вверху страницы. Такие элементы должны загружаться сразу.
Если на первом экране несколько больших изображений, лучше сократить их количество, чем пытаться компенсировать это настройками.
Сократите работу WordPress на сервере
Когда фронтенд уже приведён в порядок, смотрите на серверную часть. Здесь без плагинов тоже есть что улучшить, но многое зависит от хостинга и версии PHP.
Используйте актуальную версию PHP
Для WordPress это один из самых практичных способов ускорения. Актуальная версия PHP обычно быстрее старых и лучше работает с современными темами и плагинами. Но перед переключением проверьте совместимость: старые темы и плагины могут не пережить переход.
Если сайт работает на очень старой версии PHP, обновление может дать заметный эффект уже само по себе. Делайте это только после резервной копии и лучше сначала на тестовой копии сайта.
Проверьте OPcache и объектный кэш
OPcache — стандартный механизм PHP, который хранит скомпилированный код в памяти и уменьшает накладные расходы на повторные запросы. На нормальном хостинге он обычно включён, но лучше проверить это в панели или через phpinfo().
Объектный кэш полезен, когда сайт делает много повторяющихся запросов к базе. Если хостинг поддерживает Redis или Memcached, это уже уровень сервера, а не плагина. Но включать такой кэш имеет смысл только там, где он действительно поддерживается и правильно настроен.
Настройте обычный кэш страниц на стороне сервера
Если у вас есть доступ к настройкам Nginx, Apache или панели хостинга, используйте серверный page cache. Он отдаёт готовую HTML-страницу без повторной сборки WordPress на каждый запрос. Это особенно полезно для новостных, корпоративных и контентных сайтов.
Здесь важно не путать серверный кэш с плагином кэширования. Если у хостинга уже есть встроенный кэш, дополнительный плагин может быть не нужен. Но если серверный кэш отсутствует, без него сайт на WordPress часто будет заметно медленнее, чем мог бы быть.
Уберите лишнюю нагрузку от базы данных и админки
Даже если посетитель не видит админку, WordPress всё равно тратит ресурсы на фоновые задачи, ревизии и служебные записи. Это не всегда главная причина тормозов, но на загруженных сайтах накопленный мусор чувствуется.
Ограничьте ревизии и автосохранения, если их слишком много
WordPress хранит ревизии записей, и на длинных текстах их может накопиться очень много. Это не проблема для маленького сайта, но на контентных проектах база постепенно разрастается. Ограничение количества ревизий помогает держать таблицы в более разумном размере.
Настройка делается через wp-config.php. Перед изменением файла тоже нужен бэкап.
define( 'WP_POST_REVISIONS', 5 );Это ограничит число ревизий до пяти на запись. Если вам важна подробная история правок, ставьте больше или не меняйте параметр вовсе.
Удалите мусор только после резервной копии
В базе со временем накапливаются черновики, спам-комментарии, временные данные и старые транзиенты. Чистка базы может помочь, но делать её нужно аккуратно. Без понимания структуры таблиц лучше не удалять данные вручную через SQL, если у вас нет свежей резервной копии.
Если сайт уже давно работает и база заметно разрослась, сначала оцените её размер и только потом принимайте решение о чистке. Иногда проблема не в «мусоре», а в плохо написанном плагине, который создаёт лишние запросы на каждой странице.
Что проверить после изменений
После каждого заметного шага не полагайтесь на ощущение «стало быстрее». Проверьте результат в браузере и на внешнем сервисе. Смотрите не только на общий балл, а на конкретные вещи: время ответа сервера, количество запросов, размер страницы и блокирующие ресурсы.
Практичная последовательность проверки такая:
- откройте главную страницу и одну внутреннюю страницу в режиме инкогнито;
- сравните время загрузки до и после изменений;
- проверьте, не сломались ли меню, формы, галереи и мобильная версия;
- посмотрите, не исчезли ли важные скрипты и стили;
- если отключали что-то в теме, пройдитесь по ключевым шаблонам сайта.
Если после отключения ресурса сайт выглядит нормально, но отдельная функция перестала работать, значит, вы убрали зависимость, которая была нужна именно этому блоку. В таком случае лучше вернуть не всё подряд, а только конкретный файл или модуль.
Что даёт наибольший эффект без плагинов
Если расставить приоритеты, то в реальной работе обычно быстрее всего помогают такие шаги: убрать лишние скрипты и стили, сократить вес изображений, отключить ненужные функции темы, включить нормальный серверный кэш и обновить PHP до актуальной версии. Всё остальное уже идёт следом.
Главная идея простая: ускорение WordPress без плагинов — это не один трюк, а последовательная уборка лишнего. Сначала убираете то, что грузится зря, потом оптимизируете тему и сервер, и только после этого имеет смысл искать более тонкие улучшения. Такой подход безопаснее и обычно даёт более предсказуемый результат, чем установка ещё одного «ускорителя».