WordPress の更新通知を非表示(オフ)にする

スポンサーリンク

サーバーの仕様(PHPバージョン等)を変更できない、プラグインの更新のためにサーバーのアップデートが必要、プラグイン同士の相性など、理由は様々にあると思いますが、WordPress の更新通知を非表示(オフ)にして消したい場合があります。

この記事では、

  1. WordPress 本体の更新通知を非表示にする
  2. テーマの更新通知を非表示にする
  3. プラグインの更新通知を非表示にする
  4. 特定のプラグインの更新通知を非表示にする

これらのサンプルコードを記載します。

WordPress 6.3.2 と 6.4.2 環境で確認しています。functions.php を編集する際にはバックアップをとるなどをしてから対応されることをおすすめします。

WordPress 本体の更新通知を非表示にする

WordPress 本体バージョンの更新通知を非表示にするには、フィルターフック pre_site_transient_update_core を使用します。

add_filter( 'pre_site_transient_update_core', '__return_null' );

開発モードがオン(wp-donfig.php 内 WP_DEBUG が true )の場合は Notice: Trying to get property ‘current’ of non-object エラーが出ますが、開発モードがオフであればそのエラーは出ませんでした。

テーマの更新通知を非表示にする

WordPress にインストールしているテーマの更新通知を非表示にするには、フィルターフック pre_site_transient_update_themes を使用します。

add_filter( 'pre_site_transient_update_themes', '__return_null' );

プラグインの更新通知を非表示にする

WordPress にインストールしているプラグインの更新通知を非表示にするには、フィルターフック pre_site_transient_update_plugins を使用します。

add_filter( 'pre_site_transient_update_plugins', '__return_null' );

特定のプラグインの更新通知を非表示にする

WordPress にインストールしているプラグインの一部の更新通知を非表示にするには、フィルターフック site_option__site_transient_update_plugins を使用します。

// 特定のプラグインの更新通知を非表示にする
if ( ! function_exists('my_site_option__site_transient_update_plugins') ) {
	function my_site_option__site_transient_update_plugins($data) {
		$plugin_array = array(
			'plugin-folder/plugin-name.php',
			'plugin-folder/plugin-name.php',
		);
		foreach( $plugin_array as $plugin_name ) {
			if (isset($data->response[$plugin_name])) {
		  	unset($data->response[$plugin_name]);
		  }
		}
	  return $data;
	}
	add_filter('site_option__site_transient_update_plugins', 'my_site_option__site_transient_update_plugins');
}

更新通知を非表示にしたいプラグインを /wp-contents/plugins/ ディレクトリから探し、ディレクトリ名とプラグインファイル名を探します。

探したディレクトリ名とプラグインファイル名を配列 $plugin_array の plugin-folder と plugin-name.php に入力します。

以上となります。

コメント

タイトルとURLをコピーしました