Heute habe ich mich mit Widgets für das Dashboard von Wordpress beschäftigt und musste feststellen, dass die Doku dazu mehr als dürftig ist mittlerweile einigermaßen gut ist: Codex Dashboard API . Damit nicht noch mehr Leute unwissend sterben, habe ich mich entschlossen ein kurzes Tutorial zu schreiben…
Ein wenig Hilfe findet sich im SourcePHP des Dashboards von Wordpress. Leider ist dieser aber eher rudimentär.
Es beginnt mit dem Header des Widgets, welcher wie jeder andere PluginHeader aussieht:
1
2
3
4
5
6
7
8
9
<!--?php/*
Plugin Name: Your Dashboard Widget
Plugin URI: http://yourDashboardWidgetUrl
Description: This is a cool Dashboard-Widget
Version: 0.0
Author: Your Name
Author URI: http://yourBlogUrl
*/
Anschließend geht es los mit der Installation des Widgets:
/*
* Install the Widget.
*/add_action('wp_dashboard_setup','YOURDASHBOARDWIDGET_register_dashboard_widget');functionYOURDASHBOARDWIDGET_register_dashboard_widget(){//Add a empty option
add_option('YOURDASHBOARDWIDGET_widget_var1','');//Add a predefinied
add_option('YOURDASHBOARDWIDGET_widget_var2','ThisCouldBeAValue');wp_register_sidebar_widget('dashboard_YOURDASHBOARDWIDGET','THETITLEOFYOURWIDGET','dashboard_YOURDASHBOARDWIDGET_func',array('all_link'=-->$allLink,'width'=>'half','height'=>'single'));wp_register_widget_control('dashboard_YOURDASHBOARDWIDGET','THETITELOFYOURCONFIGURATIONMENU','dashboard_YOURDASHBOARDWIDGET_control');}/*
* Add the Widget to the Dashboard
*/add_filter('wp_dashboard_widgets','YOURDASHBOARDWIDGET_add_dashboard_widget');functionYOURDASHBOARDWIDGET_add_dashboard_widget($widgets){global$wp_registered_widgets;if(!isset($wp_registered_widgets['dashboard_YOURDASHBOARDWIDGET'])){return$widgets;}array_splice($widgets,sizeof($widgets)-1,0,'YOURDASHBOARDWIDGET');return$widgets;}
Erklärung:
dashboard_YOURDASHBOARDWIDGET ist der Name des Widgets
dashboard_YOURDASHBOARDWIDGET_func ist der Name der Methode, die für die Ausgabe des Widgets im Dashboard zuständig ist
THETITLEOFYOURWIDGET ist ein beliebig wählbarer Titel (für die Anzeige des Widgets im Dashboard)
dashboard_YOURDASHBOARDWIDGET_control ist der Name der Methode, die für die Konfiguration des Widgets zuständig ist.
THETITELOFYOURCONFIGURATIONMENU ist ein beliebig wählbarer Titel für das Konfigurationsmenü
Weiter gehts mit der Methode für die Ausgabe des Widgets im Dashboard, man sollte nur “Your Content goes here” austauschen, der Rest sollte stehen bleiben.