我正在尝试开发我的第一个Wordpress插件,并且我在第一阶段就陷入了困境.我正在尝试在插件激活时设置一些选项和数据库表,但没有运气.无论我做什么,插件都会激活,但数据库不受影响且选项不存储在DB中.我尝试在构造函数...
我正在尝试开发我的第一个Wordpress插件,并且我在第一阶段就陷入了困境.我正在尝试在插件激活时设置一些选项和数据库表,但没有运气.无论我做什么,插件都会激活,但数据库不受影响且选项不存储在DB中.我尝试在构造函数中回显,但似乎它永远不会到达它.我在WP中激活了调试,但没有报告错误.该功能没有被挂钩.有人能发现我的代码有什么问题吗?
在此先感谢您的帮助.
class Myplugin {
private static $instance;
public static function get_instance() {
if ( ! self::$instance ) {
self::$instance = new self();
}
return self::$instance;
}
private function __construct() {
register_activation_hook( __FILE__, array( &$this, 'plugin_activate' ) );
}
public function plugin_activate() {
if ( version_compare( get_bloginfo( 'version' ), '3.8.2', ' < ' ) ) {
deactivate_plugins( basename( __FILE__ ) );
} else {
$rlm_rsvplus_options = array(
'db_version' => '1.0',
'event_name' => '',
'end_date' => '',
);
update_option( 'rlm_myplugin_options', $rlm_myplugin_options );
require_once( "includes/rlm_myplugin_db_setup.php" );//It never reaches this file.
}
}
}
$myplugin = Myplugin::get_instance();
解决方法:
register_activation_hook调用需要在类本身之外.
就像是:
class Myplugin {
private static $instance;
public static function get_instance() {
if ( ! self::$instance ) {
self::$instance = new self();
}
return self::$instance;
}
private function __construct() {
// do other stuff here
}
public function plugin_activate() {
if ( version_compare( get_bloginfo( 'version' ), '3.8.2', ' < ' ) ) {
deactivate_plugins( basename( __FILE__ ) );
} else {
$rlm_rsvplus_options = array(
'db_version' => '1.0',
'event_name' => '',
'end_date' => '',
);
update_option( 'rlm_myplugin_options', $rlm_myplugin_options );
require_once( "includes/rlm_myplugin_db_setup.php" );
}
}
register_activation_hook( __FILE__, array( 'Myplugin', 'plugin_activate' ) );
您可以阅读Francis Yaconiello关于How to write WordPress plugin的以下教程的更多内容.
沃梦达教程
本文标题为:php – 插件激活挂钩无法在wordpress中工作
基础教程推荐
猜你喜欢
- 织梦dedecms如何在dede:sql中使用[field:global.autoindex/] 2022-08-27
- pbootcms网站自动清理runtime缓存方法 2023-07-09
- dedecms根据来访IP区域自动跳转对应页面的方法 2022-07-21
- dedecms织梦cms常用判断语句汇总 2022-06-24
- 织梦dedecms调用当前栏目文章数的方法 2022-11-08
- pbootcms二次开发必须要了解的后台目录结构 2023-07-09
- dedecms织梦全局变量调用方法总结 2023-07-08
- 织梦DedeCMS搜索指定多个栏目文档的办法 2022-11-11
- dedecms织梦无需登录注册可下单购买的修改 2022-11-04
- PbootCMS网站标题描述等标签限制字数的办法 2023-07-08