让代码更简单

WordPress插件激活钩子register_activation_hook

重要:本文最后更新于2019-12-20 08:34:30,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

前面讲了几章制作简单wordpress插件的教程,简单WP插件应该难不住诸位了,今天再讲讲wordpress插件教程的进阶版,了解下register_activation_hook钩子在插件工作中的作用。

复制
register_activation_hook( string $filecallable $function )

设置插件激活钩子的回调函数。

描述

当插件被激活时,动作‘Activate_PLUGINNAME’钩子被调用。在这个钩子的名称中,PLUGINNAME被替换为插件的名称,包括可选的子目录。例如,当插件位于wp-content/plugins/sampleplugin/sample.php中时,这个钩子的名称将变成‘activate_sampleplugin/sample.php’。

当插件仅由一个文件组成,并且(默认情况下)位于wp-content/plugins/sample.php中时,这个钩子的名称将是‘activate_sample.php’。

参数

  • $file
    (字符串(必须) 插件的文件名,包括路径。
  • $function
    (回调(必须) Activate_plugin动作时的执行函数。

函数原型

复制
function register_activation_hook( $file, $function ) {
$file = plugin_basename( $file );
add_action( 'activate_' . $file, $function );
}

由此可见该函数的主要构成是activate_钩子。

注意,在加载或激活插件之前,不能从另一个钩子(例如,“plugins_load”或“init”)中注册_activation_钩子,因为所有这些都将被调用。下面是错误写法!

复制
function pluginInit() {
require_once dirname(__FILE__) . '/includes/Activator.php';
register_activation_hook( __FILE__, 'Activator', 'activate' ) );
}
add_action( 'plugins_loaded', 'pluginInit' );

感觉很棒!可以赞赏支持我哟~

0 打赏

评论 (0)

登录后评论
QQ咨询 邮件咨询 狗哥推荐