Со временем на WordPress-сайте накапливается множество плагинов, часть из которых перестает использоваться. Они могут замедлять сайт, создавать уязвимости и усложнять поддержку. В этой статье разберём, как автоматизировать отключение неиспользуемых плагинов в WordPress, чтобы поддерживать чистоту и производительность вашего проекта.
Почему важно отключать неиспользуемые плагины— безопасность и производительность
Каждый активный плагин — это дополнительный код, который загружается и выполняется при каждом запросе к сайту. Даже если плагин не используется напрямую, он может:
- Замедлять загрузку страниц из-за подключения CSS, JS и запросов к базе данных;
- Увеличивать нагрузку на сервер;
- Создавать потенциальные уязвимости, особенно если плагин устарел и не обновляется;
- Затруднять обновления и диагностику из-за конфликта с другими плагинами.
Регулярный аудит и отключение неиспользуемых плагинов — лучший способ избежать этих проблем.
Как определить неиспользуемые плагины в WordPressпо активности и времени обновления
Определить, какие плагины не используются, можно несколькими способами:
- Анализировать логи активности — если плагин не вызывает никаких действий, его функции не используются;
- Проверять дату последнего обновления — устаревшие плагины с большой вероятностью могут быть неактивны;
- Использовать плагины для аудита, например, Plugin Checker для выявления неиспользуемых и проблемных расширений;
- Ручной аудит — отключать подозрительные плагины и проверять работу сайта.
Однако ручной анализ может быть длительным и ошибочным, особенно на крупных сайтах. Лучше автоматизировать процесс.
Автоматизация отключения неиспользуемых плагиновчерез кастомный код
Для автоматического отключения плагинов, которые неактивны или не использовались длительное время, можно написать собственный код. Ниже пример функции, которая отключает плагины, не активировавшиеся более 90 дней.
function wpexperts_deactivate_unused_plugins() {
if ( ! current_user_can('activate_plugins') ) return;
$plugins = get_plugins();
$active_plugins = get_option('active_plugins', array());
$threshold = 90 * DAY_IN_SECONDS; // 90 дней
$now = time();
foreach ( $active_plugins as $key => $plugin ) {
$plugin_data = isset($plugins[$plugin]) ? $plugins[$plugin] : false;
if ( ! $plugin_data ) continue;
$file = WP_PLUGIN_DIR . '/' . $plugin;
$last_modified = @filemtime($file);
if ( $last_modified && ($now - $last_modified) > $threshold ) {
deactivate_plugins($plugin);
unset($active_plugins[$key]);
error_log('Plugin deactivated by WPEXPERTS: ' . $plugin);
}
}
update_option('active_plugins', $active_plugins);
}
add_action('admin_init', 'wpexperts_deactivate_unused_plugins');Этот код срабатывает при заходе в административную панель, проверяет дату последнего изменения файлов плагинов и отключает те, которые не обновлялись более 90 дней. Такой подход помогает автоматически отключать потенциально заброшенные плагины.
Использование готовых плагинов для управления неиспользуемыми расширениямирекомендации и примеры
Если вы не хотите писать код самостоятельно, можно воспользоваться специализированными плагинами:
- Plugin Organizer — позволяет контролировать загрузку плагинов на разных страницах, а также обнаруживать редко используемые;
- WP Plugin Audit — собирает данные об активности плагинов, помогает выявить неиспользуемые;
- Clearfy Pro (доступен на WPSHOP.ru) — содержит инструменты для оптимизации и отключения неиспользуемых функций, включая плагины.
Эти инструменты помогут систематизировать работу с плагинами без необходимости самостоятельного программирования.
Практические советы по управлению плагинами в WordPressоптимизация и безопасность
Для эффективного управления плагинами следуйте рекомендациям:
- Регулярно проводите аудит, отключайте и удаляйте неиспользуемые плагины;
- Следите за обновлениями — устаревшие версии могут быть опасны;
- Используйте минимальный набор плагинов — чем меньше, тем лучше для производительности;
- Тестируйте работу сайта после отключения плагинов, чтобы избежать сбоев;
- Настраивайте автоматизацию, используя код или плагины, чтобы не упускать из виду неиспользуемые расширения.
Также полезно периодически проверять нагрузку на сервер и скорость загрузки страниц после изменений.