Как отключить автоматическое обновление WordPress
05.09.2018
Начиная с версии 3.7 ядро WordPress обновляется автоматически, без участия пользователей. Есть ряд ситуаций, по которой подобные обновления не желательны, и в этой статье мы рассмотрим несколько способов отключить автоматическое обновление WordPress.
Автоматические обновления WordPress
В первую очередь стоит отметить, что автоматические обновления (по умолчанию) касаются лишь технических релизов — это те, которые устраняют некоторые критические ошибки и уязвимости WordPress. Пропускать подобные обновления не безопасно и крайне не рекомендуется, а система отката сможет восстановить вашу прежнюю версию, в случае каких-либо сбоев при попытке обновления.
Отключаем обновления WordPress и плагинов раз и навсегда!
Есть три основных причины, по которым вам следует отключить автоматическое обновление WordPress:
Вы используете систему контроля версий, в том числе и для обновлений Вы пользуетесь какими-либо средствами для развёртывания проектов на удалённых серверах, например Capistrano или SaltStack Вы являетесь хостинг-провайдером и выполняете обновления самостоятельно и вовремя для всех ваших клиентовУправление автоматическим обновлением
Существует несколько констант, для управления автоматическими обновлениями в WordPress, их вы можете устанавливать в файле конфигурации wp-config.php. Например, чтобы полностью отключить механизм автоматических обновлений, используйте константу AUTOMATIC_UPDATER_DISABLED:
✅ Как отключить функцию автоматического обновления версии Wordpress на хостинге AIOP
define( 'AUTOMATIC_UPDATER_DISABLED', true );
Учтите, что с помощью этой директивы, вы так же отключите автоматические обновления языковых пакетов, тем и плагинов, если они включены. С помощью константы WP_AUTO_UPDATE_CORE, вы можете управлять автоматическим обновлением ядра WordPress.
Значение по умолчанию — minor, разрешит автоматическое обновление только на технические релизы, например с 3.7 на 3.7.1 и на 3.7.2, но не на 3.8, 3.9 и т.д. Значением false вы можете полностью отключить автоматическое обновление ядра, а значением true вы можете включить автоматическое обновление для всех релизов (а не только технических):
// Только технические релизы, 3.7 до 3.7.1, 3.7.2 и т.д. (значение по умолчанию) define( 'WP_AUTO_UPDATE_CORE', 'minor' ); // Все релизы, 3.7 до 3.8, 3.9 и т.д. define( 'WP_AUTO_UPDATE_CORE', true ); // Отключить автоматическое обновление ядра define( 'WP_AUTO_UPDATE_CORE', false );Вы так же можете воспользоваться специальными фильтрами для управления автоматическими обновлениями ядра:
allow_major_auto_core_updates — обновление основных релизов (с 3.7 на 3.8) allow_minor_auto_core_updates — обновление на технические релизы (с 3.7 на 3.7.1 и 3.7.2) allow_dev_auto_core_updates — обновление на версии для разработчиков (с 3.7-RC до 3.7-RC2) auto_update_core — разрешить автоматическое обновление ядраВы можете написать простой плагин, чтобы использовать эти фильтры на вашем сайте. Например, чтобы разрешить обновление основных релизов:
/** * Plugin Name: Enable Major Core Updates */ add_filter( 'allow_major_auto_core_updates', '__return_true' );А чтобы запретить автоматическое обновление ядра WordPress:
add_filter( 'auto_update_core', '__return_false' );Учтите, что многие сайты рекомендуют использовать подобные фильтры в файле functions.php вашей активной темы. Мы советуем вам этого не делать , поскольку это не даёт никаких преимуществ, а этот файл перестанет исполняться, если вдруг вы решите изменить тему вашего сайта. Подробнее в статье про functions.php .
Автоматическое обновление тем и плагинов WordPress
По умолчанию WordPress не будет автоматически обновлять ваши темы и плагины, но это можно легко изменить с помощью фильтров auto_update_theme и auto_update_plugin:
/** * Plugin Name: Auto-update Plugins and Themes */ add_filter( 'auto_update_theme', '__return_true' ); add_filter( 'auto_update_plugin', '__return_true' );Таким же образом, если автоматическое обновление тем и плагинов включено, вы можете легко его отключить используя вспомогательную функцию __return_false.
Системы контроля версий
Перед тем как выполнить автоматическое обновление, WordPress выполнит поиск директорий .svn, .git, .hg и .bz — это вспомогательные директории систем контроля версий Subversion, Git, Mercurial, и Bazaar. В случае обнаружения одной из них, автоматическое обновление выполняться не будет.
Если вы используете систему контроля версий и всё равно хотите, чтобы ядро WordPress обновлялось автоматически, вы можете воспользоваться фильтром automatic_updates_is_vcs_checkout.
В заключении хотелось бы вновь отметить, что отключать автоматическое обновление ядра WordPress не рекомендуется, особенно когда речь идёт о технических релизах, которые часто содержат устранение уязвимостей. Если по какой-либо причине автоматическое обновление на вашем сайте невозможно, вы можете воспользоваться специальным плагином Background Update Tester , который поможет вам найти и устранить причину.
Подробнее о том, почему стоит всегда обновлять WordPress, плагины и темы, читайте в нашей статье .