Иногда случается так, что после установки или обновления плагина WordPress начинает работать медленно или вообще перестаёт загружаться. В таких случаях часто единственным решением становится удаление проблемного плагина. Но что делать, если доступ к админке отсутствует из-за ошибки, вызванной плагином? В этой статье мы подробно разберём, как удалить тяжелые плагины WordPress без доступа к админке, используя разные технические приёмы и примеры кода.
Почему плагины могут «тормозить» сайт и блокировать админку
Проблемные плагины часто вызывают фатальные ошибки или создают высокую нагрузку на сервер, что приводит к недоступности сайта или админки. Причины бывают разными:
- Конфликты с другими плагинами или темой.
- Ошибки в коде плагина после обновления.
- Высокие запросы к базе данных или внешним ресурсам.
- Неправильные настройки, которые приводят к зацикливанию процессов.
В таких случаях стандартный способ удаления через админку невозможен, нужно использовать альтернативные методы.
Удаление плагина через FTP или файловый менеджер хостинга
Шаг 1: Подключение к серверу
Для начала подключитесь к вашему серверу через FTP-клиент (например, FileZilla) или воспользуйтесь файловым менеджером в панели управления хостингом.
Шаг 2: Переход в директорию с плагинами
Перейдите в папку wp-content/plugins/. В ней находятся папки всех установленных плагинов.
Шаг 3: Удаление проблемного плагина
Найдите папку с названием проблемного плагина и просто удалите её. Это отключит плагин и позволит восстановить доступ к админке.
Пример
Если, например, плагин называется heavy-plugin, удалите папку wp-content/plugins/heavy-plugin.
Отключение плагинов через базу данных
Если удалить папку нельзя, или вы хотите отключить все плагины, чтобы точно снять нагрузку, воспользуйтесь базой данных.
Как отключить все плагины через базу данных MySQL
UPDATE wp_options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';
Этот запрос очистит список активных плагинов, отключив их все. Выполнить его можно через phpMyAdmin или любой другой MySQL-клиент.
Отключение конкретного плагина через базу
Чтобы отключить один конкретный плагин, можно получить текущий сериализованный список активных плагинов, отредактировать его, удалив нужный плагин, и сохранить обратно. Но проще и безопаснее — использовать первый способ с удалением папки.
Как временно отключить плагины с помощью кода
Если у вас есть доступ к файлу wp-config.php, можно временно отключить все плагины добавлением следующей строки:
define('WP_DISABLE_PLUGINS', true); // Это не стандартная константа, пример для кастомного решения
Но WordPress не поддерживает такую константу по умолчанию. Поэтому можно создать в корне темы файл mu-plugins/disable-plugins.php с кодом:
<?php
add_filter('option_active_plugins', '__wpreset_disable_plugins');
function __wpreset_disable_plugins($plugins) {
return [];
}
?>
Это отключит все плагины, и вы сможете зайти в админку и исправить проблему.
Использование WPReset для быстрого восстановления после проблем с плагинами
Если вы используете плагин WPReset, он позволяет быстро сбросить настройки сайта, удалить все плагины или откатить изменения. Это удобно, если стандартные методы не помогают.
Пример команды WPReset для сброса плагинов
Через WP-CLI можно выполнить команду:
wp wpreset reset --keep=uploads,plugins --yes
Это сбросит сайт, но сохранит папку с плагинами и файлами загрузок.
Рекомендации по предотвращению проблем с тяжелыми плагинами
Чтобы избежать подобных ситуаций, следуйте простым правилам:
- Перед обновлением плагина создавайте резервную копию сайта.
- Проверяйте совместимость плагина с вашей версией WordPress и PHP.
- Используйте плагины с хорошими отзывами и поддержкой.
- Проводите тестирование на тестовом сайте, а не на живом.
- Отключайте ненужные плагины, чтобы снизить нагрузку.
Выводы
Удаление тяжелых плагинов без доступа к админке — частая задача, с которой сталкиваются администраторы WordPress. Самый простой и надёжный способ — удаление папки плагина через FTP или файловый менеджер. Если это невозможно, можно отключить плагины через базу данных или специальный код. Для более продвинутых пользователей подойдёт использование WPReset с его возможностями быстрого восстановления.
Эти методы помогут быстро вернуть сайт в рабочее состояние без потери данных и с минимальными затратами времени.