2010-01-27 104 views
0

我只是將一個小小的'hello world'類型插件添加到儀表板。該插件正在初始化,一切都很好,我只是有一個問題添加內容到小部件。下面的代碼:使用PHP將wordpress小部件添加到儀表板

/* 
* Setup the class 
*/ 
if(!class_exists("SampleClassSeries")){ 
    class SampleClassSeries { 
     function sampleClassSeries(){ 
      //Constructor 
     } 
     //Our dashboard widget 
     function addSampleDashboard(){ 
      ?> 
       <p>This is a test plugin samlple yo!</p> 
      <?php 
     } 
     function setup_sample_widgets() { 
      wp_add_dashboard_widget('sample_ideas_widget', 'Sample Widget', 'addSampleDashboard'); 
     } 
    }//End sampleClassSeries 
} 
/* 
* Initialise the class 
*/ 
if(class_exists("SampleClassSeries")){ 
    $samp_classSeries = new SampleClassSeries(); 
} 
/* 
* Attach actions and filters 
*/ 
if(isset($samp_classSeries)){ 
    //Add actions here 
    add_action('wp_dashboard_setup', array(&$samp_classSeries, 'setup_sample_widgets'), 1); 
} 

現在我敢肯定,問題就出在「wp_add_dashboard_widget」裏我打電話「addSampleDashboard」。我猜它無法看到的功能我得到

警告: call_user_func(addSampleDashboard) [function.call用戶-FUNC]:首先 參數有望成爲一個有效的 回調

回答

2

你的第三個參數需要是一個回調,它可以在PHP中採用各種形式。在這種情況下,您可能需要以下內容:

function setup_sample_widgets() { 
     wp_add_dashboard_widget('sample_ideas_widget', 'Sample Widget', array($this,'addSampleDashboard')); 
    } 
+0

呃就這麼簡單!感謝尼克的答案,就像一個魅力。 – Nooshu 2010-01-27 17:23:20

相關問題