我刚刚更新到WordPress 4.3,似乎有些东西被破坏了.
我收到此错误,显示在我的页面上:
注意:从版本4.3.0开始,不推荐使用WP_Widget的被调用构造函数方法!请
__construct()改用.位于第3457行的/mnt/stor13-wc1-ord1/754452/www.eden-festival.com/web/content/securewp/wp-includes/functions.php
有什么需要修复的吗?
Gal*_*Gal 41
由于php 7不再支持旧的php 4对象构造并替换为__construct()Wordpress开发人员创建了一条通知消息,因此插件开发人员将改变他们的插件的工作方式,因此它可以在下一个php版本上运行,因为php 4已经死了很长时间以前没有理由使用这种风格的对象构造.
选项1 - 不会升级到更新的PHP版本
加上
add_filter('deprecated_constructor_trigger_error', '__return_false');
到你的functions.php文件,它将忽略这些通知.
选项2 - 可能升级到php 7 /更喜欢处理问题而不是沉默它
如果这是第三方插件,请注意如果您自己进行更改并且插件开发人员将发布更新,它将覆盖您的更改.联系插件开发人员来解决此问题将是最佳选择
找到有问题的插件并进行更改
parent::WP_Widget
至
parent::__construct
Gan*_*esh 18
我也得到了同样的错误我以这种方式修复它
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 );
}
}
Run Code Online (Sandbox Code Playgroud)
由于调用这样的方式构造方法在PHP 7弃用,因此,我调用替换方式$this->WP_Widget()与parent::__construct()
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 );
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31532 次 |
| 最近记录: |