wplock.ru wordpress wplock.ru

Как найти и отключить слабые плагины WordPress без поломки сайта

Когда WordPress начинает медленно открывать админку, сыпать ошибками после обновления или конфликтовать с темой, проблема часто не в самом ядре, а в одном из плагинов. Но отключать всё подряд — плохая идея: можно потерять формы, SEO-метки, кэш, редиректы и часть контента. Ниже — рабочий порядок, который помогает найти слабое звено и убрать его без лишнего риска.

Как понять, что виноват именно плагин

Симптомы обычно повторяются: сайт долго отвечает только на отдельных страницах, в админке тормозит редактор, появляются ошибки Fatal error или Allowed memory size exhausted, а после обновления одного из расширений ломается часть фронтенда. Это не доказательство, но хороший повод проверить плагины первыми.

Что смотреть в первую очередь

  • время ответа только на страницах с определённым функционалом;
  • ошибки в wp-content/debug.log после включения отладки;
  • конфликт после обновления конкретного плагина;
  • лишние запросы к базе или внешним API;
  • дублирующиеся функции: два SEO-плагина, два кэша, два плагина для редиректов.

Если проблема проявляется только в админке, не исключайте плагины, которые добавляют метабоксы, поля, редакторские блоки или интеграции с внешними сервисами. Они часто грузят admin-ajax.php и REST API сильнее, чем кажется.

Диагностика: как быстро сузить круг

Самый надёжный способ — временно отключать плагины по одному или группами и фиксировать, что меняется. На живом сайте это лучше делать на staging-копии. Если копии нет, сначала сделайте бэкап файлов и базы.

Проверка через админку

Если доступ в админку есть, начните с неактивных и явно дублирующих расширений. Затем отключайте по одному плагину из группы: кэш, SEO, безопасность, формы, редактор, интеграции. После каждого шага проверяйте конкретный сценарий: главная, запись, поиск, отправка формы, вход в админку.

Проверка через код, если админка уже нестабильна

Когда сайт падает после активации плагина, удобнее временно отключить его через файловую систему. Самый безопасный путь — переименовать папку плагина по FTP или через файловый менеджер хостинга. WordPress увидит, что плагин пропал, и деактивирует его.

// Пример: временно отключить плагин вручную через файловую систему не кодом, а переименованием папки
// wp-content/plugins/problem-plugin -> problem-plugin.off

Если нужен более управляемый вариант для тестовой среды, можно использовать WP-CLI:

wp plugin deactivate problem-plugin

Команда работает только если WP-CLI установлен и у вас есть доступ к консоли. Это удобнее, чем лезть в базу и править active_plugins вручную.

Пошаговое решение: как отключать плагины без сюрпризов

Ниже порядок, который обычно даёт результат без лишних откатов.

  1. Сделайте резервную копию файлов и базы.
  2. Откройте список активных плагинов и отметьте те, что дублируют друг друга.
  3. Сначала отключите плагины, которые не влияют на критический путь: статистика, виджеты, социальные кнопки, вспомогательные блоки.
  4. Проверьте сайт в приватном окне и в админке.
  5. Если проблема осталась, отключайте плагины по одному из группы, которая ближе к симптомам.
  6. Когда найден виновник, проверьте его обновления, настройки и совместимость с текущей версией WordPress и PHP.

Если плагин нужен, но он конфликтует только в одном сценарии, часто помогает не полное удаление, а точечная настройка. Например, отключение лишних модулей внутри самого плагина, замена тяжёлого виджета на более лёгкий или перенос функции в код темы.

Как отключить плагин программно, если нужен точечный контроль

Иногда нужно не просто выключить расширение вручную, а сделать это по условию. Например, отключить тяжёлый плагин на фронтенде, но оставить в админке. Для этого можно использовать фильтр option_active_plugins, но делать это нужно аккуратно: ошибка в логике может оставить сайт без нужных функций.

<?php
add_filter('option_active_plugins', function ($plugins) {
    if (is_admin()) {
        return $plugins;
    }

    $disabled = [
        'heavy-plugin/heavy-plugin.php',
    ];

    return array_values(array_diff($plugins, $disabled));
});

Такой подход уместен только для тестов или очень узких сценариев. Если плагин отвечает за SEO, формы или кэш, лучше не прятать его условно, а заменить на более лёгкий аналог или убрать лишнюю функциональность.

Сравнение подходов

СпособКогда подходитРиск
Отключение через админкуСайт и панель работают стабильноНизкий
Переименование папки плагинаСайт уже ломается, нужен быстрый откатСредний
WP-CLI deactivateЕсть доступ к консоли и stagingНизкий
Условное отключение через кодНужен точечный контроль на фронтендеСредний/высокий

Проверка результата после отключения

Недостаточно просто увидеть, что сайт открылся. Нужно проверить именно тот сценарий, который ломался.

  • открывается ли проблемная страница без задержек и ошибок;
  • работают ли формы, поиск, авторизация, комментарии;
  • не пропали ли SEO-мета-теги, канонические URL и sitemap;
  • не сломались ли кэш, минификация и критические скрипты;
  • нет ли новых ошибок в debug.log и консоли браузера.

Если плагин отключён, но ошибка осталась, не возвращайте его сразу. Проверьте соседние расширения: часто конфликт создаёт не один плагин, а связка из двух. Типичный пример — SEO-плагин и отдельный модуль для редиректов, два плагина кэша или два решения для lazy load.

Частые ошибки и как их исправить

Отключили не тот плагин

Если после деактивации пропали формы, хлебные крошки или редиректы, верните плагин и ищите другой источник проблемы. Перед отключением полезно записать, за что отвечает каждое расширение. На проектах с историей это экономит часы.

Проверяли только главную страницу

Главная может открываться нормально, а внутренняя запись, архив или форма обратной связи — уже нет. Проверяйте именно проблемный маршрут, а не только стартовую страницу.

Не учли кэш

После отключения плагина старый HTML и старые скрипты могут продолжать отдаваться из кэша. Очистите кэш плагина, серверный кэш и, если есть, CDN. Иначе можно решить, что проблема не ушла.

Удалили плагин, не проверив зависимости

Некоторые плагины хранят данные в метаполях, таблицах или опциях. Если вы удаляете их полностью, убедитесь, что не потеряете важные настройки. Сначала деактивация, потом анализ данных, и только затем удаление.

Что делать с тяжёлыми, но нужными плагинами

Если расширение полезно, но заметно тормозит сайт, не всегда нужно от него избавляться. Иногда достаточно:

  • выключить ненужные модули внутри плагина;
  • убрать автозагрузку лишних скриптов на всех страницах;
  • ограничить работу только нужными типами записей;
  • заменить плагин на более узкое решение;
  • перенести часть логики в тему или mu-plugin.

Для чистки сайта и удаления дублей функций иногда удобнее использовать набор инструментов вроде Clearfy Pro: он помогает отключать лишние элементы WordPress и сокращать технический шум. Но даже в таком случае сначала важно понять, что именно вы отключаете и зачем, а не просто «почистить всё подряд».

Практический чек-лист перед отключением

  • Есть свежий бэкап файлов и базы.
  • Понятно, какой сценарий ломается.
  • Известно, какие плагины дублируют функции друг друга.
  • Есть staging-копия или хотя бы окно для теста.
  • Проверка после отключения включает не только главную, но и проблемные страницы.
  • Кэш и CDN будут очищены после изменений.

Если действовать в таком порядке, отключение плагинов перестаёт быть лотереей. Вы не гадаете, а последовательно сужаете круг, проверяете гипотезу и оставляете только то, что реально работает на вашем сайте.

×
Сделай WordPress мощнее!

Скидка -20% на топовые премиум плагины

Выбрать плагин сейчас ⋙