Автоматические обновления плагинов в WordPress – это полезная функция, которая позволяет поддерживать безопасность и актуальность сайта без вмешательства администратора. Однако в некоторых случаях требуется отключить автообновление для определённых плагинов или всех сразу, чтобы избежать конфликтов или протестировать обновления вручную.
Почему может потребоваться отключить автообновления плагинов
Есть несколько причин, по которым разработчики и администраторы предпочитают отключать автоматические обновления:
- Совместимость: Иногда новые версии плагинов могут не работать с текущей темой или другими плагинами.
- Контроль обновлений: Желание тестировать обновления на тестовом окружении перед применением на боевом сайте.
- Критические проекты: В случаях, когда стабильность важнее новых функций, автоматические обновления могут стать риском.
WordPress предоставляет несколько способов управления автообновлениями с помощью фильтров в файле functions.php вашей темы или в собственном плагине.
Отключение автообновлений плагинов полностью
Чтобы полностью отключить автообновления для всех плагинов на сайте, добавьте следующий код в файл functions.php вашей активной темы или создайте собственный плагин:
function wpconfig_disable_all_plugin_auto_updates( $update, $item ) {
return false; // Отключаем автообновление для всех плагинов
}
add_filter( 'auto_update_plugin', 'wpconfig_disable_all_plugin_auto_updates', 10, 2 );Этот фильтр возвращает false для каждого плагина, что полностью отключает автоматические обновления.
Отключение автообновлений для конкретных плагинов
Часто требуется отключить автообновление только для определённых плагинов, оставив для остальных включённым. Для этого можно проверить идентификатор плагина ($item->plugin) и вернуть false только для нужных.
function wpconfig_disable_auto_update_for_specific_plugins( $update, $item ) {
// Список плагинов для отключения автообновления
$plugins_to_disable = array(
'akismet/akismet.php',
'hello-dolly/hello.php'
);
if ( in_array( $item->plugin, $plugins_to_disable ) ) {
return false;
}
return $update;
}
add_filter( 'auto_update_plugin', 'wpconfig_disable_auto_update_for_specific_plugins', 10, 2 );В этом примере автообновления отключены для плагинов Akismet и Hello Dolly. Идентификаторы плагинов можно узнать в папке wp-content/plugins или на странице управления плагинами.
Управление автообновлениями через плагин Clearfy Pro
Если вы используете Clearfy Pro, то этот плагин предоставляет удобный интерфейс для управления автообновлениями без редактирования кода. В Clearfy Pro можно отключить автообновления для отдельных плагинов или для всех компонентов WordPress.
Кроме того, Clearfy Pro включает дополнительные настройки безопасности и оптимизации, которые полезны для контроля обновлений и производительности вашего сайта.
Пример расширенного фильтра для условного отключения
Иногда требуется более гибкая логика, например, отключать автообновление плагина только на определённых сайтах или при определённых условиях. Вот пример, как это можно сделать:
function wpconfig_conditional_plugin_auto_update( $update, $item ) {
// Отключаем автообновление Akismet на сайте с определённым URL
if ( $item->plugin === 'akismet/akismet.php' && strpos( home_url(), 'example.com' ) !== false ) {
return false;
}
return $update;
}
add_filter( 'auto_update_plugin', 'wpconfig_conditional_plugin_auto_update', 10, 2 );Здесь мы проверяем домен сайта и отключаем автообновление плагина Akismet только если сайт находится на example.com.
Как проверить состояние автообновлений
Для проверки, какие плагины настроены на автоматическое обновление, можно использовать плагин WP Auto Updates. Он визуально показывает статус автообновлений для каждого плагина и темы, а также позволяет вручную управлять этим процессом.
Использование таких инструментов значительно упрощает контроль обновлений без необходимости править код.
Резюме и рекомендации
Отключение автообновлений плагинов в WordPress — это частая задача, когда нужен контроль над стабильностью сайта и совместимостью плагинов. Используйте фильтр auto_update_plugin для управления этим процессом через код. Для удобства и безопасности можно применять проверенные плагины, например, Clearfy Pro.
Не забывайте тестировать обновления на тестовом сервере, чтобы предотвратить возможные сбои на боевом сайте.