В процессе работы с WordPress накапливается множество плагинов, которые со временем перестают использоваться. Они могут замедлять сайт, создавать угрозы безопасности и занимать лишнее место на сервере. В этой статье мы подробно разберём, как безопасно и эффективно удалить неиспользуемые плагины, а также рассмотрим автоматизацию этого процесса с помощью кода.
Почему важно удалять неиспользуемые плагины в WordPress
Даже неактивные плагины могут влиять на производительность сайта. Они занимают место в базе данных и на диске, а иногда содержат уязвимости, которые могут использовать злоумышленники. Кроме того, обновление большого количества плагинов усложняет администрирование.
Удаление плагинов помогает:
- Уменьшить нагрузку на сервер и базу данных;
- Повысить безопасность сайта;
- Освободить место на диске;
- Упростить управление сайтом.
Однако важно удалять плагины правильно, чтобы не повредить работоспособность сайта.
Как определить неиспользуемые плагины
Перед удалением нужно точно понять, какие плагины действительно не используются. Вот несколько способов:
- Проверка активности в админке: В меню «Плагины» отображаются активные и неактивные плагины. Неактивные – первый кандидат на удаление.
- Анализ функционала: Оцените, нужны ли функции плагина. Иногда плагины активны, но их функции не используются на текущих страницах.
- Мониторинг запросов: Используйте плагины типа Query Monitor, чтобы увидеть, какие плагины вызывают запросы и загружаются при работе сайта.
- Резервное копирование: Перед удалением сделайте полную резервную копию сайта.
Удаление плагинов через админ-панель и FTP
Самый простой способ удалить плагин – через админку WordPress:
- Перейдите в раздел «Плагины».
- Отключите нужный плагин (если он активен).
- Нажмите «Удалить» под названием плагина.
Если по какой-то причине удаление в админке невозможно, можно удалить плагин вручную через FTP или файловый менеджер хостинга. Для этого:
- Подключитесь к серверу через FTP.
- Перейдите в папку
wp-content/plugins. - Найдите папку с названием плагина и удалите её.
После удаления вручную рекомендуется проверить базу данных на наличие остатков настроек плагина.
Очистка базы данных от данных удалённых плагинов
Некоторые плагины оставляют в базе данных таблицы и записи, которые могут занимать место и влиять на производительность. Для очистки базы данных можно использовать плагины, например:
- WP-Optimize: Позволяет удалять лишние таблицы и оптимизировать базу.
- Advanced Database Cleaner: Ищет и удаляет остатки плагинов.
Если хочется сделать это вручную, можно выполнить SQL-запросы, но это требует знаний. Пример SQL-запроса для удаления таблицы плагина:
DROP TABLE IF EXISTS wp_pluginname_table;Где wp_pluginname_table — название таблицы плагина. Названия таблиц можно узнать из документации плагина или через phpMyAdmin.
Автоматизация удаления неиспользуемых плагинов с помощью кода
Для опытных разработчиков возможно написать функцию, которая будет проверять статус плагинов и предлагать удалить неактивные. Ниже пример функции с префиксом wpelementor, которая возвращает список неактивных плагинов:
function wpelementor_get_inactive_plugins() {
if (!function_exists('get_plugins')) {
require_once ABSPATH . 'wp-admin/includes/plugin.php';
}
$all_plugins = get_plugins();
$active_plugins = get_option('active_plugins', []);
$inactive_plugins = [];
foreach ($all_plugins as $plugin_path => $plugin_data) {
if (!in_array($plugin_path, $active_plugins)) {
$inactive_plugins[$plugin_path] = $plugin_data['Name'];
}
}
return $inactive_plugins;
}Эту функцию можно расширить для автоматического удаления неактивных плагинов с помощью функции wpelementor_delete_plugin($plugin_path):
function wpelementor_delete_plugin($plugin_path) {
if (!current_user_can('delete_plugins')) {
return new WP_Error('no_permission', 'Недостаточно прав для удаления плагинов.');
}
require_once ABSPATH . 'wp-admin/includes/plugin.php';
require_once ABSPATH . 'wp-admin/includes/file.php';
require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
$upgrader = new Plugin_Upgrader();
return $upgrader->delete_plugin($plugin_path);
}<Используйте эти функции с осторожностью и только после резервного копирования.
Рекомендации по безопасности при удалении плагинов
Убедитесь, что:
- Вы делаете резервное копирование сайта перед удалением плагинов.
- Удаляете только те плагины, в работе которых уверены.
- Проверяете, не зависят ли другие части сайта от удаляемого плагина.
- Периодически проверяете актуальность оставшихся плагинов и обновляете их.
Если сайт большой и сложный, рассмотрите возможность тестирования удаления плагинов на локальной копии сайта.
Полезные плагины для управления и удаления плагинов
Кроме стандартных средств WordPress, есть инструменты, которые помогут управлять плагинами:
- Plugin Organizer: Позволяет контролировать, какие плагины загружаются на каких страницах, что помогает выявлять неиспользуемые.
- WP Reset: Помогает быстро сбрасывать настройки плагинов и удалять их остатки.
- Health Check & Troubleshooting: Позволяет запускать сайт в режиме диагностики и отключать плагины для теста без влияния на посетителей.
Эти инструменты помогут не только удалять, но и оптимизировать работу плагинов.