WordPressのプラグインって本当にいろいろあって便利なのですが、最新バージョンのプラグインがWordPressのコアバージョンに対応していなかったり、以前の機能だけで良かったり、自分以外の人にWordPressベースで作ったサイトを管理してもらったりする際に更新通知が出てなにげに更新してしまい不具合が発生した、なんてことを防止するために、特定のプラグインの更新をOFF(非表示)にする方法を紹介します。
このページの公開時、WordPressのコアバージョンが3.8.1なのですが、使っているプラグインで「Google Sitemap Generator」が更新されこのバージョンに対応していないようで、更新するとサイトマップが正常に作られないという現象がでてしまったので、いろいろと調べてこの方法にたどり着きました。
特に古いWordPressのコアバージョンでサイト運営をされている方にとっては都合の良い方法だと思います。
特定のプラグインの更新通知をしないようにする方法
使っているテーマのfunctions.phpに以下のコードを追記して特定のプラグインの更新通知がされないように設定します。
add_filter('site_transient_update_plugins', 'custom_site_transient_update_plugins');
function custom_site_transient_update_plugins($value) {
$ignore_plugins = array(
'ここにプラグインのパスを入れる'
);
foreach ($ignore_plugins as $ignore_plugin) {
if (isset($value->response[$ignore_plugin])) {
unset($value->response[$ignore_plugin]);
}
}
return $value;
}
上記のコードの中で、’ここにパスを入れる’の部分を「wp-content/plugins/」からの相対パスで指定します。
例)「Google Sitemap Generator」
では、’google-sitemap-generator/sitemap.php’と指定します。
これで、「Google Sitemap Generator」の更新通知がOFFになり、誤ってプラグインを更新して不具合が発生するのを防ぐことができます。
functions.phpの編集はFTPソフトで現在使っているテーマのfunctions.phpをダウンロードして編集した後、元の場所に戻すだけです。念のためダウンロードしたfunctions.phpはリネームするなどしてバックアップしておきましょうね。
functions.phpへ安全にコードを追加するために
functions.phpはWordPressの動作に必要な関数というのを格納しておく大切なファイルです。このファイルの編集に失敗すると画面が真っ白になって操作できなくなります。変更前にバックアップを取っておけば不具合が起きたときに元に戻せますが、大事なときに限ってバックアップを取り忘れるものです。そんな不具合を最小限にするためにWordPressには便利なプラグインがあります。functions.phpにコードを入力して動作するプログラムの塊のことを「スニペット」といいますが、このプラグインはスニペットをfunctions.phpに挿入したりスニペット毎に管理できるプラグインです。このプラグインには簡単な構文エラーチェック機能も備わっていますので、これを使うことでより安全にスニペットを追加することができます。
テーマのfunctions.phpへ挿入するコードを管理するプラグイン「Code Snippets」

プラグインで個々のプラグインの更新通知をON/Offする方法
上記の方法で直接コードを挿入して更新通知を止める方法もあるのですが、最も安心なのはプラグインを使用する方法です。万が一エラーなどが出て管理画面に入れなくなったとしてもFTPなどでプラグインのフォルダを削除してしまえば簡単に回避することができます。