是否有在插件批量更新过程完成后只调用一次的钩子?

时间:2018-07-04 作者:inventivo

我试图在插件批量更新后通过电子邮件发送插件名称列表。

使用此挂钩,我的函数发送了各种电子邮件,每个电子邮件都有一个插件名称,因为该操作是在每个插件更新后运行的:

add_action( \'upgrader_process_complete\', \'inv_update_service_notification_send_function\',10, 2);

此钩子未激发,也未调用我的函数:

add_action(\'update_bulk_plugins_complete_actions\',\'inv_update_service_notification_send_function\',10,2);

是否有一个钩子在整个插件批量更新过程完成后调用?

1 个回复
SO网友:Peter HvD

我认为你想要的行动upgrader_process_complete

Codex页面没有具体说明,所以我不能完全确定它是针对每个插件运行,还是针对所有插件运行,但它对我有效:-)

function bgmc_plugins_update_completed( $upgrader_object, $options ) {

    // If an update has taken place and the updated type is plugins and the plugins element exists
    if ( $options[\'action\'] == \'update\' && $options[\'type\'] == \'plugin\' && isset( $options[\'plugins\'] ) ) {
        // code here
    }
}
add_action( \'upgrader_process_complete\', \'bgmc_plugins_update_completed\', 10, 2 );

结束