2013-10-11 123 views
0

我有一個奇怪的行爲,我想知道...爲什麼。我做了一個WordPress插件,允許設置各種東西(如寬度,位置,顏色等),我試圖在前端使用它,但我堅持最基本的東西。未調用此方法。爲什麼?

我有這個代碼,它的工作原理確定:

add_filter('widget_display_callback', 'capture_widget', 100, 3); 
function capture_widget($instance, $widget_class, $args) { 
    $widget_class->widget($args, $instance); 
    echo $widget_class->widget_options['classname']; 

    return false; 
} 

的事情是,我想一切都移動到一個類。所以我這樣做:

class MyWidgets { 
    function __construct() { 
    add_filter('widget_display_callback ', array($this, 'widget_display'), 100, 3); 
    } 

    public function widget_display($instance, $widget_class, $args){ 
    $widget_class->widget($args, $instance); 
    echo $widget_class->widget_options['classname']; 

    return false; 
    } // widget_display 
} 

new MyWidgets(); 

而且它停止工作。一切都放在完全相同的文件,但只有第一個版本的作品。我沒有任何錯誤,只是沒有做任何事情。我試圖add_filter('widget_display_callback', 'capture_widget', 100, 3);部分移動__construct方法裏面(不過我沒有打電話給外面的最一流的功能),並繼續工作,它只是不,當涉及到調用一個自包含的方法,發揮好。

任何很好的理由?我錯過了什麼?

謝謝!

+3

'widget_display_callback' →刪除k和單引號 – loQ

+0

哦,親愛的空間!我感到很尷尬!謝謝。 –

+1

沒問題的人。我們都會遇到這種情況:) – loQ

回答

3
'widget_display_callback ' 

→刪除k和單引號之間的空間

相關問題