我正在尝试开发我的第一个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中工作
基础教程推荐
猜你喜欢
- wordpress formatting.php – 修复双破折号 2023-10-08
- pbootcms网站容易被攻击和被黑吗? 2023-07-08
- php – 如何将wordpress数据库中的缩略图转换为外部页面 2023-10-08
- ThinkPHP Apache和Nginx伪静态规则整理,WordPress固定链接伪静态设置教程 2023-10-08
- 【wordpress】wordpress插件之自动采集发布工具 2023-10-08
- centos 7下安装xampp,并使用wordpress搭建站点 2023-10-08
- WordPress总裁主题CeoMax最新版设置教程 2023-10-08
- 「WordPress 技巧」:如何修改 WordPress 数据库前缀 2023-10-08
- 怎么安装使用PbootCMS网站模板 2023-07-09
- 搭建WordPress博客程序库 2023-10-08
