0

WordPress 版本 3.4.2

这是最简单的插件形式,只有两个钩子:

register_activation_hook(__FILE__, sbv_activate());
register_deactivation_hook(__FILE__, sbv_deactivate());

function sbv_activate() {
  add_option('sbv_opt1', 'test');
}

function sbv_deactivate() {
  delete_option('sbv_opt1');
}

激活此插件后,我去检查了选项表,似乎该选项不存在,如果我从停用功能中删除 delete_option() 行,它将起作用。如果我错了,请纠正我,好像 wordpress 正在调用 sbv_activate() 然后 sbv_deactivate(),因此撤消了我在激活中所做的事情,我认为它不应该像这样。我要疯了。

4

1 回答 1

3

您应该只使用函数的名称而不是函数本身:

register_activation_hook(__FILE__, 'sbv_activate');
register_deactivation_hook(__FILE__, 'sbv_deactivate');

WP Codex 参考: http ://codex.wordpress.org/Function_Reference/register_activation_hook

于 2012-11-15T09:22:08.897 回答