Как отключить автоматические обновления в WordPress с помощью кода

Автоматические обновления в WordPress призваны повысить безопасность и стабильность сайта, но иногда они могут вызвать конфликты с кастомными решениями или привести к неожиданным проблемам. В этой статье рассмотрим, как правильно отключить автоматические обновления ядра, плагинов и тем с помощью кода, чтобы сохранить контроль над процессом обновлений.

Почему стоит отключать автоматические обновления в WordPress

Хотя автоматические обновления полезны для безопасности, бывают ситуации, когда разработчикам или администраторам нужно их отключить:

  • Нестабильность кастомных плагинов или тем после обновлений.
  • Необходимость проводить тестирование обновлений на тестовом сервере перед запуском на продакшене.
  • Использование специфичных версий плагинов или тем, которые могут перестать работать после обновления.

Отключение автоматических обновлений позволяет контролировать процесс и планировать обновления в удобное время.

Отключение автоматических обновлений ядра WordPress

Для отключения автоматических обновлений ядра WordPress можно использовать фильтр auto_update_core. Добавьте следующий код в файл functions.php вашей темы или в отдельный плагин:

add_filter('auto_update_core', '__return_false');

Этот фильтр полностью отключит автоматические обновления ядра, включая минорные и мажорные версии. Если вы хотите отключить только мажорные обновления, оставив минорные (которые часто содержат важные исправления безопасности), используйте так:

add_filter('allow_major_auto_core_updates', '__return_false');

Таким образом, минорные обновления будут устанавливаться автоматически, но мажорные — нет.

Отключение автоматических обновлений плагинов и тем

WordPress с версии 5.5 поддерживает автоматические обновления для плагинов и тем. Их можно отключить с помощью фильтров auto_update_plugin и auto_update_theme. Пример кода для полного отключения:

add_filter('auto_update_plugin', '__return_false');
add_filter('auto_update_theme', '__return_false');

Если вы хотите отключить обновления для отдельных плагинов или тем, можно добавить логику в фильтры. Например, отключим обновления только для плагина Contact Form 7:

add_filter('auto_update_plugin', 'wpaction_disable_cf7_update', 10, 2);
function wpaction_disable_cf7_update($update, $item) {
    if ($item->slug === 'contact-form-7') {
        return false;
    }
    return $update;
}

Аналогично для темы, например, отключим обновления темы Twenty Twenty-One:

add_filter('auto_update_theme', 'wpaction_disable_twenty_twenty_one_update', 10, 2);
function wpaction_disable_twenty_twenty_one_update($update, $theme) {
    if ($theme->stylesheet === 'twentytwentyone') {
        return false;
    }
    return $update;
}

Отключение автоматических обновлений с помощью констант в wp-config.php

Помимо фильтров, можно использовать константы в файле wp-config.php для контроля обновлений:

  • define('AUTOMATIC_UPDATER_DISABLED', true); — отключает все автоматические обновления (ядро, плагины, темы).
  • define('WP_AUTO_UPDATE_CORE', false); — отключает автоматические обновления ядра.

Пример использования:

define('AUTOMATIC_UPDATER_DISABLED', true);

Этот способ более жесткий и отключит все автоматические обновления без исключений.

Практические рекомендации и советы

Отключая автоматические обновления, важно помнить о безопасности сайта:

  • Регулярно проверяйте обновления вручную и тестируйте их на тестовом сервере.
  • Используйте плагины для мониторинга новых версий, например, Clearfy, который помогает управлять обновлениями и оптимизировать сайт.
  • Автоматизируйте резервное копирование перед обновлениями, чтобы избежать потери данных.

Пример комбинированного кода для отключения обновлений с исключениями

Ниже пример, который отключает автоматические обновления ядра и плагинов, кроме плагина безопасности Wordfence, обновления которого разрешены:

add_filter('auto_update_core', '__return_false');
add_filter('auto_update_plugin', 'wpaction_allow_wordfence_update', 10, 2);
function wpaction_allow_wordfence_update($update, $item) {
    if ($item->slug === 'wordfence') {
        return true;
    }
    return false;
}

Такой подход дает гибкость управления обновлениями на уровне отдельных компонентов.

Выводы

Отключение автоматических обновлений в WordPress — важный инструмент для контроля стабильности и совместимости сайта. Используйте фильтры и константы, чтобы настроить обновления под свои задачи, не забывая при этом про регулярный аудит и тестирование обновлений. Инструменты типа Clearfy помогут упростить управление обновлениями и сохранить безопасность вашего сайта.

Как удалить заблокированные пользователи из WordPress
09.12.2025
Как добавить настройки для плагинов в WordPress с примерами кода
22.02.2026
Автоматическое удаление неиспользуемых шорткодов в WordPress
03.04.2026
Удаление старых ревизий записей в WordPress для оптимизации базы данных
10.02.2026
Как создать автоматические уведомления в WordPress с помощью WPRemark
17.02.2026