是否需要使用REGISTER_ACTIVATION_HOOK?

时间:2017-11-19 作者:mrKC.988

我正在构建我的第一个插件,它非常基础。我创建了init 用于排队样式的类。。等等。它还具有register_activation_hookregister_deactivation_hook 钩子,但我不知道该怎么办!

我的问题是。。设身处地想想,你想创建一个基本插件,添加一些小功能,比如相关帖子,也许是一些小部件。。。等等,并且您不想在激活/停用或卸载时执行任何操作。。你会。。

取下那些挂钩

2 个回复
最合适的回答,由SO网友:Johansson 整理而成

您不必使用register_activation_hookregister_deactivation_hook 钩子,它们是可选的。顾名思义,它们是计划运行插件激活/停用任务的挂钩,例如出于某种目的更新所有用户的状态。

所以,如果你的插件不需要这些任务,那么就不要使用它们。如果要注册新的帖子类型和分类,可以使用init 改为挂钩。

SO网友:nydame

正如另一位受访者已经指出的那样,它们都是可选的。尽管如此,我相信他们没有得到充分利用,尤其是register_activation_hook. 如果一个代码块只需要运行一次(例如,注册一个新的帖子类型),那么只在插件激活时而不是每次加载一个页面时运行它显然会更有效!

但是,请记住,激活挂钩被称为before 或者plugins_loaded 挂钩或init[1], 因此,尝试从添加到这些常用钩子中的函数注册激活钩子是没有意义的。

register_deactivation_hook 在删除插件创建的操作或过滤器时非常有用。

结束

相关推荐