2011-11-09 70 views
0

我是新來的wordpress。我想創建自己的自定義小部件並在側面菜單上顯示內容。然而,即使它顯示在wordpress的控制面板中,wordpress也不會顯示該小部件。我將CustomWidget添加到主要Widget區域。WordPress的 - 如何顯示自定義小部件

編輯:我注意到「小部件」函數沒有被調用,因爲它假設是做渲染的。

class CustomWidget extends WP_Widget{ 
    function CustomWidget(){ 
     $widget_ops = array('classname' => 'custom_widget', 'description' => __("Custom Widget")); 
     $control_ops = array('width' => 250, 'height' => 400, 'id_base' => 'custom-widget'); 
     $this->WP_Widget('CustomWidget', 'Custom Widget', $widget_ops, $control_ops); 
    } 

    function widget($args, $instance){ 
     extract($args); 
     $title = apply_filters('widget_title', empty($instance['title']) ? '' : $instance['title']); 
     $menu_order = $instance['menu_order']; 
     $show_siblings = $instance['show_siblings']; 
     $exclude = $instance['exclude']; 
     echo $before_widget; 
     echo $before_title; 
     echo 'Title!!!'; 
     echo $after_title; 
     echo 'Content!!!'; 
     echo $after_widget; 
    } 
} 

function CustomWidget_init(){ 
    register_widget('CustomWidget'); 
} 
add_action("widgets_init", "CustomWidget_init"); 

回答

0

在你的代碼的最後

add_action('TB_RenderWidget', array('CustomWidget', 'render'),10,12); 
+0

沒有工作,不幸收藏此。由於某種原因,CustomWidget構造函數正在被擊中,而不是渲染函數。 – Bill

+0

我忘了一些東西。你需要包含一個像''code'函數渲染的函數($ before_widget,$ after_widget,$ title){ echo $ before_widget; if(!empty($ title)){ echo $ before_title。 $ title。 $ after_title; }; //這裏你打電話給你使用tu打印內容 echo $ after_widget; '代碼' –

相關問題