在sage主题中添加自定义小部件时出错

时间:2016-12-16 06:14:20

标签: wordpress themes

我是sage主题的新手。我试图在lib / setup.php文件中添加自定义小部件,但是我在{path}错误中找不到Class'Roots \ Sage \ Setup \ WP_Widget'。

以下是我的代码:

class Banner_Widget extends WP_Widget {
 function __construct() {
    $this->WP_Widget('Banner-Widget', __('Banner Widget', 'blogerist'), $widget_ops);
    add_action('save_post', array(&$this, 'flush_widget_cache'));
    add_action('deleted_post', array(&$this, 'flush_widget_cache'));
    add_action('switch_theme', array(&$this, 'flush_widget_cache'));
}
public function form($instance) {
    //form content

}
function widget($args, $instance) {
    //widget content
}
function update($new_instance, $old_instance) {
    $instance = array_map('strip_tags', $new_instance);
    $this->flush_widget_cache();
    $alloptions = wp_cache_get('alloptions', 'options');
    if (isset($alloptions['Banner-Widget'])) {
        delete_option('Banner-Widget');
    }
    return $instance;
}
function flush_widget_cache() {
    wp_cache_delete('Banner-Widget', 'widget');
}
}

1 个答案:

答案 0 :(得分:0)

如果要通过扩展WP_Widget来创建类,则应使用全局命名空间。

在WP_Customize_Control之前添加\符号。

class Banner_Widget extends \WP_Widget {
  //....
 }