WordPress テーマファイルのアップデートを非通知にする プログラム編

2020年12月5日

今回は、前回のWordPress テーマファイルのアップデートを非通知にする CSS編と異なり、
プログラムでキャンセルする方法になります。

PHP 7.1以前の記載の方法

依頼されたWordpressでテーマのアップデートで更新されると困る場合の対策方法です。
もちろん子テーマを用いて、対策できればそれに越したことはないのですが、
それでは都合が悪いという担当者に向けた記事となります。
この追加分はテーマのfunction.phpの最後にでも追加しておいてください。



// テーマファイルのアップデートを非通知にする
remove_action( 'load-update-core.php', 'wp_update_themes' );
add_filter( 'pre_site_transient_update_themes', create_function( '$a', "return null;" ) );

PHP 7.2以降の記載の方法

PHP7.2以降は、上記の方法では、create_function が内部でeval()を実行していて、セキュリティ上危ないということで廃止され、エラー表示となります。
Function create_function() is deprecated
このようなエラーが、各記事やWordpressのダッシュボードなどに表示されます。
この追加分はテーマのfunction.phpの最後にでも追加しておいてください。



// テーマファイルのアップデートを非通知にする
remove_action( 'load-update-core.php', 'wp_update_themes' );
add_filter( 'pre_site_transient_update_themes', function($a){return null;} );