WordPress. Запрет на обновление плагина.

Для запрета обновления существует несколько способов:
1. Установить плагин, который позволяет это делать 🙂 Disable All WordPress Updates
2. Прописать в конфиге константу

define( 'DISALLOW_FILE_MODS', true );

которая запретит обновление вообще всех плагинов
3. Изменить в коде плагина, который не нужно обновлять, версию на 99.9, что явно больше реально существующих версий. Например
plgupd
4. Прописать фильтр, позволяющий блокировать обновления конкретных плагинов (аналог первого пункта, но своими руками).
Для этого нужно в файл wp-config.php добавить массив:

// запрет обновления плагинов (см. functions.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' );
This entry was posted in Заметки and tagged , , , . Bookmark the permalink.

Всего 9 комментариев

Leave a Reply

Your email address will not be published.

Можно использовать язык разметки Markdown

Protected by WP Anti Spam