私は個々のプラグインの自動更新を設定するためのWordpressのプラグインを書いています。 'auto_update_plugin'フィルタが機能していることを確認できません。私がコールバック関数に入れたものは何も返しません。関数が決して呼び出されないように。
フィルター
add_filter( 'auto_update_plugin', array( $this, 'l7wau_auto_update_specific_plugins' ), 10, 2 );
コールバック関数
/**
* Update specific plugins. Got this from Wordpress codex.
*/
function l7wau_auto_update_specific_plugins( $update, $item ) {
// Array for adding the path to file. Use for 3.8.1 and below.
$new_plugin_array = array();
$this->plugin_slug = 'changed'; //Test to see if it is working. Nothing here.
/**
* Get the array of names/slugs to set to auto-update
* Added the folder/file.php because the actual slug is not
* the file name. It is the plugin folder and file with header use for 3.8.1 and below.
*/
$plugins = $this->l7wau_get_array_plugins_to_update();
if ( in_array( $item->slug, $plugins ) ) {
return true; // Always update plugins in this array
} else {
return $update; // Else, use the normal API response to decide whether to update or not
}
}
これでうまくいくことがわかりました。自動更新サイクルが発生するまでに12時間かかります。私が変更したのは、10から20の重要度です。
add_filter( 'auto_update_plugin', array( $this, 'l7wau_auto_update_specific_plugins' ), 20, 2 );