Здравствуйте, мне изменили содержимое кода плагина под мои потребности. Теперь меня все устраивает в плагине и я не хочу его более обновлять. Но беспокоюсь что после выхода новых обновлений я по ошибке обновлю его и все доработки слетят. Скажите можно ли в WordPress как то сделать недоступным проверку новых обновлений?
Ответ:
Самый простой способ это изменить версию плагина на более высокую, что бы про сравнении версий у вас была выше.
То есть вам нужно найти папку с плагином, затем открыть для редактирования файл плагина где прописана информация о плагине:
/** Plugin Name: PuzzleEx Plugin URI: //andreyex.ru/raboty/pazlypyatnashki/ Description: Игра пятнашки. Author: AndreyEx Version: 1.0 Author URI: http://AndreyEx.ru/ */
Найти стоку Version: x.x и заменить ее на Version: xxx.x.x.x
/** Plugin Name: PuzzleEx Plugin URI: //andreyex.ru/raboty/pazlypyatnashki/ Description: Игра пятнашки. Author: AndreyEx Version: 1000.0 Author URI: http://AndreyEx.ru/ */
Все, вам не грозит обновление пока не выйдет xxx версия плагина(что практически не возможно)
Так же есть и другие способы:
1. Запрет обновления всех плагинов:
define( 'DISALLOW_FILE_MODS', true );
Данную строку нужно прописать в файле wp-config.php который расположен в корне сайта.
2. Выборочный запрет обновления плагинов:
В файле wp-config.php прописать:
$DISABLE_UPDATE = array( 'mailpress', 'другое_название_плагина' );
И добавить обработчик в файл functions.php который лежит в корне вашего шаблона:
// запрет обновления выборочных плагинов function filter_plugin_updates( $update ) { global $DISABLE_UPDATE; // см. wp-config.php if( !is_array($DISABLE_UPDATE) || count($DISABLE_UPDATE) == 0 ){ return $update; } foreach( $update->response as $name => $val ){ foreach( $DISABLE_UPDATE as $plugin ){ if( stripos($name,$plugin) !== false ){ unset( $update->response[ $name ] ); } } } return $update; } add_filter( 'site_transient_update_plugins', 'filter_plugin_updates' );
(данный способ не проверял, по моему можно все проще прописать)
3. Запрещаем обновление всех плагинов в functions.php
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' );