检测何时激活或停用任何插件

时间:2018-07-11 作者:Steve

我有一个初学者的主题,我用我自己建立的大多数网站。因为每个站点都有不同的插件依赖关系,所以我试图创建一个脚本,它从本质上整理当前活动的所有插件的列表,并将它们存储在JSON文件中。

然后,我想使用TGM插件激活来循环该列表,并安装任何尚未存在的插件。

我们使用git来托管我们的主题目录。当我们推动这些更改时,它们会自动部署到我们的临时服务器上。问题是,我们不想为了安装丢失的插件而必须登录到FTP或运行WP-CLI命令。如果本地主机上缺少插件,我们更希望依赖项来自主题本身,以便自动安装插件。

我们还有一个非常健忘的开发人员,不能依靠他手动将插件添加到TGM文件中。

因此,我这里的问题在于,我似乎找不到任何在插件激活或停用时立即调用的挂钩,此时需要重新整理插件列表并将其输出到JSON文件中,以用于激活或停用该列表中的插件。

在此方面的任何帮助都将不胜感激。

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

解决方案很少。您可以使用activate_plugindeactivate_plugin 例如挂钩。

但是据我所知,您希望在插件列表发生更改时得到通知,而不是在插件被激活或停用时得到通知。

所以最简单的方法就是update_option.

add_action(\'updated_option\', function( $option_name, $old_value, $value ) {
    if ( \'active_plugins\' == $option_name ) {
        // update your json file based on $value
    }
}, 10, 3);

结束

相关推荐

EDIT-Comments.php COMMENT_ROW_ACTIONS AJAX问题

在编辑注释上。php页面,我正在连接到comment\\u row\\u actions过滤器,以便在末尾添加另一个链接。我正在复制“Approve”链接,添加另一个查询键和值,并修改锚文本。我想根据新查询键的值添加一些注释元。批准的链接:/wp-admin/comment.php?c=9999&action=approvecomment&_wpnonce=8526c66已批准的元链接/wp-admin/comment.php?c=9999&action=approvecommen