我怎样才能去除一个主题的所有痕迹?

时间:2017-11-19 作者:ProfK

昨天我试着安装Thematic 主题,似乎非常多功能和优雅。然而,我在每个页面请求上都会出错,甚至对于管理员用户也是如此。

其中一个错误如下所示:

注意:自4.3.0版以来,主题\\u Widget\\u搜索中WP\\u Widget的调用构造函数方法已被弃用!请改用\\uu construct()。in/home/iecapxbq/public\\u html/wp包含/函数。php在线3900

但第3900行functions.php 是失败构造函数的总括。所有3个失败的构造函数都用于WP_Widget in Thematic_Widget_*. 然而,我有时也会收到2条更详细的错误消息。第一个:

标题已由/home/iecapxbq/public\\u html/wp includes/functions.php:3900处开始的输出在/home/iecapxbq/public\\u html/wp admin/includes/misc中发送。php在线1114

在…上misc.php 第1114行,我找到以下代码:

header( sprintf( \'Referrer-Policy: %s\', $policy ) );
这看起来不像构造函数,尤其是在调用它时没有RHS。Visual Studio 2017。第二个:

警告:无法修改标题信息-标题已由/home/iecapxbq/public\\u html/wp includes/functions.php:3900)中的/home/iecapxbq/public\\u html/wp includes/pluggable发送。php在线1216

在里面pluggable.php 第1216行:

header("Location: $location", true, $status);
与其他详细错误相同的代码。那么我怀疑header() 功能,但这仍然是在删除整个主题文件夹之后。

如果故障是header() 那么我可以创建一个覆盖错误主题的子主题吗header()?

我使用的是PHP 7和WP 4.9。

1 个回复
SO网友:Jacob Peattie

小部件错误是唯一的“真实”错误。与头相关的错误只是由HTTP头之前输出的错误通知(包括misc中的一个输出)引起的。修复该错误将解决其他错误。

这些小部件的问题是,它们是用过时的PHP编写的(似乎4年多没有更新过)。您可以在此处阅读更多信息:http://php.net/manual/en/migration70.deprecated.php

取消注册小部件可能是最简单的解决方案。您可以在子主题中使用unregister_widget() 功能:

unregister_widget( \'Thematic_Widget_Search\' );
如果您需要这些特定的小部件,那么您需要注销它们,然后用您自己的代码重新注册它们,因为它们没有构造函数问题。

但最终的问题是主题与PHP7不兼容,并且不再维护。你可能会想找到一个不同的主题。

结束

相关推荐

Debug errors on sidebar

我正在wordpress 3.8上使用一个儿童主题“Twenty14”。在调试模式下,我会遇到以下关于小部件的错误。注意:正在尝试获取\\wordpress\\wp content\\themes\\tema2014\\functions\\widgets中非对象的属性。php在线148update_post_meta($post->ID, \"_sidebar\", $_POST[\"link\"]); 以及注意:未定义的索引:link in\\wordpress\\wp content