В WordPress начиная с версии 5.5 появилась возможность включать автообновления для плагинов и тем прямо из админки. Это удобно для поддержания безопасности, но иногда требуется отключить автообновления плагинов, чтобы избежать неожиданных сбоев или конфликтов с кастомным кодом. В этой статье подробно разберём, как правильно отключить автообновления плагинов в WordPress с примерами кода и рекомендациями, а также рассмотрим альтернативные плагины для управления обновлениями.
Почему стоит отключать автообновления плагинов в WordPress
Автообновления — это палка о двух концах. С одной стороны, они помогают быстро получить патчи безопасности и новые функции. С другой — обновления могут ломать функционал сайта, особенно если используются кастомные решения, несовместимые с новой версией плагина. Поэтому на некоторых проектах автообновления отключают или контролируют вручную.
Если ваш сайт — это сложный бизнес-проект с кастомными доработками, отключение автообновлений плагинов позволит вам тестировать обновления на локальной копии, прежде чем выкатывать их на рабочий сайт.
Типичные проблемы с автообновлениями
- Несовместимость с темой или другими плагинами.
- Поломка пользовательских функций из-за изменений в API плагина.
- Временное нарушение работы сайта из-за ошибок обновления.
Как отключить автообновления плагинов через админку WordPress
В WordPress 5.5+ в разделе Плагины появилась колонка «Автообновления». Чтобы отключить автообновления для конкретного плагина, достаточно нажать на ссылку «Отключить автообновления» напротив нужного плагина.
Однако этот способ не подходит, если нужно массово отключить автообновления для всех плагинов или программно управлять ими.
Отключение автообновлений плагинов с помощью кода в файле functions.php
Для более гибкого управления автообновлениями плагинов можно использовать фильтры WordPress. Добавьте следующий код в файл functions.php вашей темы или в плагин-сниппет:
add_filter('auto_update_plugin', 'wpwp_disable_auto_update_plugin', 10, 2);
function wpwp_disable_auto_update_plugin($update, $item) {
// Список плагинов, для которых отключаем автообновления
$disabled_plugins = [
'akismet/akismet.php',
'hello-dolly/hello.php',
];
if (in_array($item->plugin, $disabled_plugins)) {
return false; // Отключить автообновления
}
return $update; // Оставить автообновления для остальных
}
В этом коде вы явно указываете, для каких плагинов отключить автообновления, передавая их пути относительно папки wp-content/plugins. Это очень удобно, если хотите частично отключать автообновления.
Как узнать путь плагина
Путь плагина можно посмотреть на странице плагинов в админке, наведя на название плагина, или в файле readme.txt плагина. Обычно это folder/plugin-file.php.
Отключение автообновлений для всех плагинов сразу
Если нужно полностью отключить автообновления всех плагинов, используйте следующий фильтр:
add_filter('auto_update_plugin', '__return_false');
Этот простой код полностью отключит автообновления плагинов на сайте.
Управление автообновлениями с помощью плагинов
Если не хотите работать с кодом, можно воспользоваться специализированными плагинами для контроля автообновлений. Вот несколько популярных решений:
- Companion Auto Update — гибкое управление автообновлениями плагинов, тем и самого ядра.
- Enable Automatic Updates — простой плагин для включения или отключения автообновлений.
- Clearfy Pro — продвинутый плагин оптимизации и безопасности, который также позволяет гибко управлять автообновлениями и убрать лишние обновления, чтобы избежать конфликтов.
Резюме и рекомендации по отключению автообновлений плагинов
Отключение автообновлений — важный инструмент для контроля стабильности сайта. Рекомендуется:
- Всегда тестировать обновления на тестовом сервере.
- Использовать фильтр
auto_update_pluginдля программного управления обновлениями. - Подключать уведомления о доступных обновлениях, чтобы не пропустить важные патчи.
- Использовать надёжные плагины, такие как Clearfy Pro, для комплексного управления обновлениями и оптимизации.
С помощью приведённых методов вы сможете настроить автообновления плагинов в WordPress максимально безопасно и под свои нужды.