Как в wordpress запретить обновления для плагина?

Здравствуйте, мне изменили содержимое кода плагина под мои потребности. Теперь меня все устраивает в плагине и я не хочу его более обновлять. Но беспокоюсь что после выхода новых обновлений я по ошибке обновлю его и все доработки слетят. Скажите можно ли в 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' );




2016-02-23T21:32:52
Лучшие учебники по Wodpress