最新消息:重新回归WordPress,我要比较认真的开始更新我的博客了。

更新wordpress后主题出错的处理方法

程序问题 hanlei 3681浏览

最近更新的wordpress的 最低支持 php版本更新到了php5.6,为了更新wordpress就把服务器的php版本更新到了7.2,结果就无法显视页面了。

出现的问题

网站打开提示The site is experiencing technical difficulties.

问题分析

确认是主题的问题,因为后台可以正常使用,更换主题后前台也可正常访问 。

仔细看会发现有部分代码已经执行,因为hanlei`blog是网站的标题内容。这样问题就好处理了,查看网页源码,找到代码停止的地方,就是出错的地方。

在主题源文件中找到代码对应的位置,我的这个是在header.php内。

很明显出错的位置就在输出菜单的这一行,经过查询发现ereg_replace函数在PHP5.3后就停用了,换成了preg_replace。

ereg_replace("<div[^>]*><ul[^>]*>", "", wp_nav_menu(array('theme_location' => 'nav', 'echo' => false)) )
//更换为
preg_replace("{<div[^>]*><ul[^>]*>}", "", wp_nav_menu(array('theme_location' => 'nav', 'echo' => false)) )

保存在服务器后,一切又恢复正常,原来的主题又可以用了。

转载请注明:HANLEI'BLOG » 更新wordpress后主题出错的处理方法