78模板网分享cms建站教程,提供网站模板、网站插件、办公模板等模板教程免费学习,找模板教程就上78模板网!

修复WordPress提示已弃用的构造函数WP_Widget

修复WordPress提示已弃用的构造函数

前提,在使用一些古老的WP插件时,debug时常遇到提示该构造函数已过时。

如:

注意:WP_Widget 被调用的构造函数方法从 4.3.0 版本开始被弃用! 使用__construct()代替. 在 xxx/wp-includes/functions.php 第 3457 行

其中,提示了你应当如何使用新的构造函数。

这里,我遇到的是关于小工具调用的这个:

WP_Widget 的被调用构造函数方法自 4.3.0 版起已弃用

解决方法为:

示例错误代码:

class Dokan_Category_Widget extends WP_Widget {
    /**
     * Constructor
     *
     * @return void
     **/
    public function __construct() {
        $widget_ops = array( 'classname' => 'dokan-category-menu', 'description' => __( 'Dokan product category menu', 'dokan' ) );
        $this->WP_Widget( 'dokan-category-menu', 'Dokan: Product Category', $widget_ops );
    }
}

正确代码:

class Dokan_Category_Widget extends WP_Widget {
    /**
     * Constructor
     *
     * @return void
     **/
    public function __construct() {
        $widget_ops = array( 'classname' => 'dokan-category-menu', 'description' => __( 'Dokan product category menu', 'dokan' ) );
        //$this->WP_Widget( 'dokan-category-menu', 'Dokan: Product Category', $widget_ops );
        parent::__construct('dokan-category-menu', 'Dokan: Product Category', $widget_ops  );
    }
}

如果有一些像class ***_Widget extends WP_Widget 这种类型,你还需要:

声明一个函数然后调用父构造函数:

class myClass extends WP_Widget {
  function __construct(){
     parent::__construct(...) // calls constructor from WP_Widget class
  }
}

本文链接:http://78moban.cn/post/12246.html

版权声明:站内所有文章皆来自网络转载,只供模板演示使用,并无任何其它意义!

联系技术
文章删除 友链合作 技术交流群
1050177837
公众号
公众号
公众号
返回顶部