Php 应用WordPress主题有问题
我对WordPress(和这个网站)比较陌生,不知道是否有人能帮我。我通常只是随便使用HTML和CSS前端,但我正试图将此主题应用于本地主机上的WordPress,结果如下: 注意:WP_小部件的被调用构造函数方法是 从4.3.0版起已弃用!使用 __construct() 有人能帮我弄明白这一切吗Php 应用WordPress主题有问题,php,wordpress,Php,Wordpress,我对WordPress(和这个网站)比较陌生,不知道是否有人能帮我。我通常只是随便使用HTML和CSS前端,但我正试图将此主题应用于本地主机上的WordPress,结果如下: 注意:WP_小部件的被调用构造函数方法是 从4.3.0版起已弃用!使用 __construct() 有人能帮我弄明白这一切吗 感谢您抽出时间,祝您有一个幸福的一天。这里的钥匙在第14行: 14 0.3934 36378552 Woo_Widget_AdSpace->Woo_Widget_AdSpace( )
感谢您抽出时间,祝您有一个幸福的一天。这里的钥匙在第14行:
14 0.3934 36378552 Woo_Widget_AdSpace->Woo_Widget_AdSpace( ) ..\widgets.php:591
正如其他人所提到的,这是一个旧的PHP4风格的构造函数,已被弃用。很可能是你的主题。当搜索特定的小部件时,会产生一个快速搜索,这意味着它与您的主题有关
如果您想继续使用该特定主题作为基础,但要完全消除错误,则需要仔细阅读,然后从内部重写该小部件
成功扩展主题后,可以在子主题的functions.php
文件中使用类似的内容覆盖它:
add_action('after_setup_theme', 'my_theme_overrides');
function my_theme_overrides(){
unregister_widget('Woo_AdWidget');
register_widget('My_Woo_AdWidget');
}
class My_Woo_AdWidget extends Woo_AdWidget{
public function __construct(){
$widget_ops = array('description' => 'Use this widget to add any type of Ad as a widget.' );
WP_Widget::__construct(false, __('Woo - Adspace Widget', 'woothemes'),$widget_ops);
}
}
这是未经测试的,但它应该有助于避免弃用错误,同时保留主题类的主要逻辑。不过,我强烈建议您选择一个不同的主题。您的一个插件包含一个使用旧PHP4风格构造函数的小部件。请尝试逐个禁用您的插件,以找出导致问题的原因。@bklynM,如果在OP尝试激活主题时发生这种情况,则主题将是问题所在,而不是插件。我假设您正在使用?明确地这是一个旧的PHP4样式的构造函数,将来将不再受支持。我建议选择不同的主题,或者覆盖小部件本身。
add_action('after_setup_theme', 'my_theme_overrides');
function my_theme_overrides(){
unregister_widget('Woo_AdWidget');
register_widget('My_Woo_AdWidget');
}
class My_Woo_AdWidget extends Woo_AdWidget{
public function __construct(){
$widget_ops = array('description' => 'Use this widget to add any type of Ad as a widget.' );
WP_Widget::__construct(false, __('Woo - Adspace Widget', 'woothemes'),$widget_ops);
}
}