WordPress по умолчанию включает автоматическое обновление ядра, тем и плагинов. Это сделано для повышения безопасности, но может привести к проблемам совместимости, неожиданным изменениям интерфейса и сбоям в работе сайта. Особенно это критично для сайтов с кастомизированными темами или нестандартными плагинами.
Автообновления ядра WordPress делятся на два типа: минорные (например, с версии 6.5.1 до 6.5.2) и мажорные (например, с 6.5 до 6.6). Минорные обновления включены всегда, мажорные можно отключить или контролировать вручную. Обновления плагинов и тем начиная с WordPress 5.5 тоже могут происходить автоматически, если не изменены соответствующие настройки.
Для полного отключения автообновлений требуется внести изменения в файл wp-config.php или подключить фильтры в functions.php активной темы. Также существует возможность управления через wp-cli или сторонние плагины, если требуется гибкая настройка без редактирования кода вручную.
Перед отключением автоматических обновлений необходимо обеспечить стабильный процесс ручного обновления, регулярное резервное копирование и тестирование на тестовом стенде, чтобы не упустить критические исправления безопасности.
Отключение всех автоматических обновлений через wp-config.php
Для полного отключения автоматических обновлений WordPress откройте файл wp-config.php, расположенный в корне сайта. Добавьте следующую строку до строки /* That’s all, stop editing! Happy publishing. */:
define('AUTOMATIC_UPDATER_DISABLED', true);
Эта директива отключает все фоновые обновления, включая ядро, темы, плагины и переводы.
Дополнительно стоит указать:
define('WP_AUTO_UPDATE_CORE', false);
Значение false запрещает обновления ядра WordPress любого уровня – как минорные, так и мажорные. Если строка WP_AUTO_UPDATE_CORE уже присутствует, замените её.
После внесения изменений сохраните файл и очистите кэш, если используете плагины кэширования или серверное кеширование.
Настройка обновлений только для плагинов или тем
Для отключения автоматических обновлений только для плагинов, добавьте в файл functions.php
вашей темы следующий код:
add_filter( 'auto_update_plugin', '__return_false' );
Если требуется запретить обновления только для тем, используйте:
add_filter( 'auto_update_theme', '__return_false' );
Чтобы оставить включёнными обновления только для плагинов, а для тем отключить, добавьте в functions.php
только фильтр auto_update_theme
со значением __return_false
.
Альтернативный способ – использовать плагин Easy Updates Manager. В его настройках можно выборочно отключить обновления для плагинов или тем. После установки перейдите в раздел «Dashboard» → «Updates Options» и отключите автоматические обновления для нужных компонентов.
Для полной точечной настройки можно использовать фильтр auto_update_plugin
с проверкой определённых плагинов по их слагу. Пример:
add_filter( 'auto_update_plugin', function( $update, $item ) {
return $item->slug !== 'akismet';
}, 10, 2 );
Этот код отключит автообновление всех плагинов, кроме akismet
.
Отключение обновлений через фильтры в functions.php
Чтобы отключить автоматическое обновление ядра WordPress, добавьте в файл functions.php
вашей темы следующий код:
add_filter('auto_update_core', '__return_false');
Этот фильтр полностью блокирует обновления ядра, включая минорные. Для отключения обновлений тем и плагинов используйте:
add_filter('auto_update_plugin', '__return_false');
add_filter('auto_update_theme', '__return_false');
Если требуется сохранить обновления безопасности, но отключить все остальные, замените '__return_false'
на условную функцию. Пример для отключения только крупных обновлений ядра:
add_filter('allow_major_auto_core_updates', '__return_false');
add_filter('allow_minor_auto_core_updates', '__return_true');
add_filter('allow_dev_auto_core_updates', '__return_false');
Изменения в functions.php
темы будут утеряны при её обновлении. Для постоянного эффекта используйте дочернюю тему или напишите небольшой плагин с теми же фильтрами.
Использование плагинов для управления обновлениями
Для точного контроля над автоматическими обновлениями WordPress подойдут специализированные плагины. Один из наиболее функциональных – Easy Updates Manager. Он позволяет отключать обновления ядра, плагинов, тем и даже переводов. После установки перейдите в раздел «Панель управления обновлениями» и отключите нужные компоненты.
Если требуется оставить автоматические обновления безопасности, но исключить обновления плагинов и тем, в Easy Updates Manager можно выбрать соответствующие настройки в подразделе «Дополнительно».
Альтернатива – плагин WP Disable Auto Updates. Он предлагает минималистичный интерфейс и подходит для случаев, когда нужна только базовая блокировка. После активации зайдите в «Настройки» → «Disable Updates» и отметьте пункты, которые требуется отключить.
Для сайтов с высокой нагрузкой или нестандартной архитектурой целесообразно использовать Companion Auto Update. Он предоставляет расширенные отчёты по обновлениям, уведомления на email и возможность настройки автоматического создания бэкапов перед обновлениями.
Перед использованием любого из плагинов убедитесь в его совместимости с текущей версией WordPress и наличием регулярных обновлений. Не устанавливайте несколько плагинов для управления обновлениями одновременно – это может вызвать конфликты.
Как отключить уведомления о доступных обновлениях
WordPress отображает уведомления о новых версиях ядра, тем и плагинов в админке. Чтобы скрыть эти уведомления, можно использовать код или плагин.
- Откройте файл
functions.php
активной темы или создайте подключаемый плагин. - Добавьте следующий код для отключения уведомлений о новых версиях ядра:
add_filter('pre_site_transient_update_core', '__return_null');
- Чтобы убрать уведомления об обновлениях плагинов:
remove_action('load-update-core.php', 'wp_update_plugins');
add_filter('pre_site_transient_update_plugins', '__return_null');
- Для отключения уведомлений о новых версиях тем:
remove_action('load-update-core.php', 'wp_update_themes');
add_filter('pre_site_transient_update_themes', '__return_null');
Если используется роль администратора, можно скрыть уведомления только для неё:
if (!current_user_can('manage_options')) {
add_filter('pre_site_transient_update_core', '__return_null');
add_filter('pre_site_transient_update_plugins', '__return_null');
add_filter('pre_site_transient_update_themes', '__return_null');
}
Альтернатива – плагин Manage Notification E-mails или Disable All WordPress Updates, если предпочтителен интерфейс вместо кода.
Проверка текущего состояния автообновлений WordPress
Чтобы узнать, активированы ли автоматические обновления в вашем WordPress, выполните следующие шаги:
- Перейдите в корневую директорию вашего сайта через FTP или используйте файловый менеджер хостинга.
- Откройте файл
wp-config.php
. - Проверьте наличие строки, которая отвечает за автообновления:
define( 'WP_AUTO_UPDATE_CORE', true );
Если значение установлено как
true
, то автообновления включены для всех типов обновлений. - Если строки нет или значение установлено как
false
, автообновления отключены.
Также проверьте настройки через консоль WordPress:
- Перейдите в раздел Инструменты → Состояние сайта.
- Найдите вкладку Автообновления, где будет указано, разрешены ли автоматические обновления для вашего сайта.
Для точной диагностики можно использовать плагины, например, Easy Updates Manager, который позволяет детально управлять и контролировать автообновления.
Рекомендуется периодически проверять состояние автообновлений, особенно после обновлений WordPress или установки новых плагинов, чтобы избежать непреднамеренных изменений в настройках.
Последствия отключения автообновлений и как их учесть
Отключение автоматических обновлений WordPress может повлиять на безопасность и производительность сайта. Когда автообновления отключены, обновления системы, плагинов и тем не будут загружаться автоматически, что оставляет сайт уязвимым для новых угроз.
Первое последствие – это риск возникновения уязвимостей. Каждый выпуск обновлений включает исправления безопасности, которые предотвращают атаки. Без своевременных обновлений сайт может стать мишенью для хакеров, использующих известные уязвимости.
Второе – проблемы совместимости. Если плагин или тема не обновляются автоматически, их новая версия может быть несовместимой с текущими компонентами сайта, что приведет к сбоям или ошибкам в работе. Особенно это касается крупных обновлений ядра WordPress, которые могут изменять структуру баз данных или API.
Третье – задержка в функциональных обновлениях. Многие обновления содержат не только исправления безопасности, но и новые функции. Если автообновления отключены, сайт не получит новых возможностей и улучшений, что может замедлить его развитие.
Для минимизации этих рисков важно регулярно проверять доступность обновлений вручную и тестировать их в безопасной среде. Также стоит использовать инструменты для резервного копирования данных и обновлений, чтобы избежать потери данных при обновлении.
Кроме того, можно настроить уведомления о новых обновлениях, чтобы оперативно реагировать на возможные проблемы. В случае критических обновлений, например, для безопасности, рекомендуется немедленно их устанавливать, даже если автообновления отключены.
Вопрос-ответ:
Почему стоит отключать автоматические обновления WordPress?
Отключение автоматических обновлений в WordPress может быть полезным для тех, кто использует кастомизированные темы или плагины. Иногда обновления могут конфликтовать с индивидуальными настройками, что приведет к сбоям на сайте. Однако нужно учитывать, что отключение автоматических обновлений может увеличить риски безопасности, так как уязвимости, исправляемые обновлениями, будут оставаться на сайте.