Отключение обновления ядра, темы и плагинов WordPress

Совсем недавно столкнулся с такой проблемой, работаешь с wordpress вносишь изменения в теме, стилях, файлах. Но тут разработчики темы подоспели со свежим обновлением темы и говорят «обнови нашу тему, она стала круче».  Конечно же ты без задней мысли нажимаешь обновить тему и замечаешь что некоторые изменения, а то и все, внесенные тобой в теме исчезли. Это происходит потому что разработчики тем пытаются делать их интуитивно понятными и  максимально широкими для администрирования, с мыслью о том, что администратору не нужно лезть в код и вносить изменения.

Казалось бы выход из этой ситуации очень просто, просто не обновлять тему, плагин, или само ядро WordPress (это при условии если Вы делали изменения  в ядре CMS WordPress, что конечно же, уважающий себя разработчик никогда не сделает). Но у этого способа есть один минус, это постоянно висящее оповещение об вышедших обновлениях, которые так и манят, так и манят «ну обнови меня, ну пожалуйста».  Чтобы избавится от этого искушения и попросту отключить  все оповещения об обновлениях вашей темы, плагинов или ядра WordPress, достаточно проделать следующие действия. Итак приступим:

1. Для начала откроем папку с темой, которую мы используем.  У меня этот путь выглядит следующим образом «uokmusic\wp-content\themes\klasik\».

2. В папке с нашей темой наверняка есть файл functions.php,  открываем данный файл любым редактором текста/кода,  для этого подойдет notepad++ .

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

Для того, чтобы отключить обновления только ядра WordPress (уведомления об обновлении ядра приходить не будут, но останутся уведомления об обновлении тем и плагинов) дописываем:

add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;" ) );
wp_clear_scheduled_hook( 'wp_version_check' );

 

Для того, чтобы отключить обновление только плагинов WordPress (уведомления об обновлении плагинов приходить не будут, но останутся уведомления об обновлении ядра и тем) дописываем:

remove_action( 'load-update-core.php', 'wp_update_plugins' );
add_filter( 'pre_site_transient_update_plugins', create_function( '$a', "return null;" ) );
wp_clear_scheduled_hook( 'wp_update_plugins' );

 

Для того, чтобы отключить обновление только тем WordPress (уведомления об обновлении тем приходить не будут, но останутся уведомления об обновлении ядра и плагинов) дописываем:

remove_action( 'load-update-core.php', 'wp_update_themes' );
add_filter( 'pre_site_transient_update_themes', create_function( '$a', "return null;" ) );
wp_clear_scheduled_hook( 'wp_update_themes' );

Вот собственно и все. За Вами стоит выбор какие области обновлений вы хотите отключить. Как пример приведу код из моего файла function.php,  который я делал для  своего заказчика. Он очень часто пугался когда работал в административной панели,  видя уведомления об обновлениях всего, и машинально мог нажать не понимая, какие могу произойти  от его действий последствия. Я просто отключил все обновления.  От греха подальше.  Если в Ядре WordPress что-то глобально изменится, лучше я самостоятельно все это обновлю,  но при этом я буду спокоен, что пока я не наблюдаю за работой его сайта, там не произойдет страшных непоправимых ошибок.

Пример из моего файла function.php , где полностью отключены все обновления тем, ядра и плагинов WordPress:

/**
 * Disable updates wordpress core, themes  and plugins.
 */
//Diasable Core Updates.
add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;" ) );
wp_clear_scheduled_hook( 'wp_version_check' );

//Disable Plugin Updates.
remove_action( 'load-update-core.php', 'wp_update_plugins' );
add_filter( 'pre_site_transient_update_plugins', create_function( '$a', "return null;" ) );
wp_clear_scheduled_hook( 'wp_update_plugins' );

//Disable Theme Updates.
remove_action( 'load-update-core.php', 'wp_update_themes' );
add_filter( 'pre_site_transient_update_themes', create_function( '$a', "return null;" ) );
wp_clear_scheduled_hook( 'wp_update_themes' );

Если у Вас возникнут какие-то вопросы, обязательно напишите в комментариях или лично мне и я постараюсь Вам помочь,  посоветовать какое-то решение в силу своих знаний  и компетентности 🙂

One thought on “Отключение обновления ядра, темы и плагинов WordPress

Оставьте комментарий