wordpress使用__construct()统一构造方法解决同类名错误

WordPress升级PHP7后侧边栏报错,原因是PHP7不再支持与类名相同的构造方法,需改用__construct()。国内主题普遍存在此问题,因未遵循官方规范。修改方法是将旧式构造方法替换为标准写法,如使用parent::__construct()初始化组件,即可解决兼容性问题。

文章作者:
阅读时间: 5 分钟
更新时间:2025年11月13日

博客wordpress说在的环境升级到php7以后侧边栏出现了错误,打开wordpress调试模式及php错误提示以后后,发现给出了如下提示:

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Translation_Entry has a deprecated constructor in XXX.php on line 73

这个报错的原因是 PHP7 不再支持与类名相同的构造方法,构造方法统一使用 __construct(), 比如下面的写法 PHP7 就会报这个错误。

function widget_ui_login() {
		$widget_ops = array( 'classname' => 'widget-user', 'description' => '显示登录信息' );
		$this->WP_Widget( 'widget_ui_login', 'Xiaoyao-登录', $widget_ops, $control_ops );
	}

实际上wordpress官方早已经说明不要使用这种方法早在很久以前,wordpress官方主题以及系统中使用了适应php7的标准写法,但是国内很多主题开发者均没有按照要求修改!为了解决这个问题,对代码不是太熟悉的逍遥一直在找解决办法,结果发现国内几乎所有的主题基本都有这个问题,很明显都是抄抄抄的!

function __construct(){
		parent::__construct( 'widget_ui_login', 'Xiaoyao-登录', array(  'classname' => 'widget-user', 'description' => '显示登录信息' ) );
	}

通过php标准写法,修改后,php7及以上版本就不会报这个错误了!

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

在AI工具中继续讨论:
曾凤祥
曾凤祥
WordPress技术负责人
WordPress 独立站开发领域 10+ 年实践经验,长期专注于外贸独立站搭建与 SEO 优化,累计服务企业客户数百家(含制造业、外贸企业、政府等行业)
相关文章
无论你是否已有网站,我们都能帮你把线上业务推上新高度
无论什么行业,都能快速拥有专业网站:
无论什么行业,都能快速拥有专业网站:

展示型官网 / 品牌站 / 外贸独立站,均有成熟模板与定制方案
无需懂代码:可视化编辑+我们指导,轻松启动 → 快速上线,抢占先机​
结构清晰、利于SEO与后期运营,降低长期维护成本

立即查看建站方案
网站加载慢、跳出高、询盘少?
网站加载慢、跳出高、询盘少?

老旧体验与技术隐患会直接拖累获客与转化。
我们提供:网站全面诊断 → 速度/安全/结构优化 → 可持续运维支持(技术+策略),让网站真正成为您的业务增长工具,而不只是“线上门面”。

马上获取专属优化方案
微信联系
chat 扫码联系
模板建站
挑选模板
网站定制
免费诊断
咨询热线
咨询热线

189-0733-7671

返回顶部