WordPressのアップグレード通知は3種類ある。
- WordPress本体
- プラグイン
- テーマ
アップグレード通知はすべてのログインユーザーのダッシュボードに表示される。
すべてのユーザーのダッシュボードから消去する方法
// ダッシュボードのアップグレード通知を非表示
// WordPress本体
add_filter("pre_site_transient_update_core", "__return_null");
// プラグイン
add_filter("pre_site_transient_update_plugins", "__return_null");
// テーマ
add_filter("pre_site_transient_update_themes", "__return_null");
権限によってアップグレード通知を出し分ける方法
管理者のみアップグレード通知を表示する場合
add_action( 'admin_init', 'admin_notices_update_nag_remove' );
function admin_notices_update_nag_remove() {
if ( ! current_user_can( 'administrator' ) ) {
remove_action( 'admin_notices', 'update_nag', 3 );
}
}
nagとは、何度もしつこく文句をいうこと(スラング)。
コードの解説
admin_noticesアクション
すべての管理者ページを表示する際に実行されるアクション。実行されるアクション関数によりページタイトルのすぐ上に好みの文言を表示できる。
ダッシュボードページだけに表示する場合は、管理者ページのファイル名が格納されている $pagenow
を利用して、
global $pagenow;
if ( isset( $pagenow ) && $pagenow == 'index.php' )
add_action( 'admin_notices', 'mytheme_notices' );
アップデート通知を非表示にした場合、併用したほうが良い設定
非表示にするだけでは、WordPress のバージョンチェックAPIとの通信を行って表示が遅くなる場合がある(管理画面は常時)ので、追記する。
remove_action( 'wp_version_check', 'wp_version_check' );
remove_action( 'admin_init', '_maybe_update_core' );
wp_version_check:
WordPressのバージョンを最新版と照らし合わせて確認する。
_maybe_update_core:
コアを更新する必要があるかどうかを決定する。
Related Tags