WP: adăugare de widget-uri în dashboard


Începând din WordPress 2.7 dashboard-ul (sau “panoul de control” cum apare tradus în română) poate fi controlat ca şi conţinut, adăugând widget-uri noi. Da, ştiu că acum ne apropiem de versiunea 3.0 şi poate tema e “fumată” pentru mulţi. Pentru toţi ceilalţi haideţi să vedem cât de uşor este să adăugăm un widget. Informaţiile de bază le avem în Codex-ul WordPress la Dashboard Widgets API. Cheia e să intervenim pe acţiunea wp_dashboard_setup pentru a adăuga widget-ul cu wp_add_dashboard_widget. Rezultatul îl vedeţi în captura de mai jos. Iar după captură este codul PHP de introdus în functions.php (căutaţi-l între fişierele temei folosite; dacă nu există, creaţi-l).

imagine

Iată codul:

[PHP]function adauga_widget_in_dashboard(){
//primul parametru este identificatorul (ID-ul) pentru widget
//al doilea parametru e numele afisat pentru widget
//al treilea parametru e numele functiei ce va genera continutul widgetului
wp_add_dashboard_widget(‘widget_demonstrativ’, ‘Titlu pentru widget’, ‘widget_demonstrativ_functia’);
}

function widget_demonstrativ_functia() {
//aici puneti continutul widgetului
echo ‘<p>Text, text, ceva text. Aici punem ce text dorim.</p>’;
}

add_action(‘wp_dashboard_setup’, ‘adauga_widget_in_dashboard’);[/PHP]

La ce ne ajută? De exemplu dacă dezvoltăm bloguri pentru clienţi şi dorim să le lăsăm datele de contact putem să scriem rapid câteva linii de cod şi iaca widget-ul în dashboard cu datele de contact! După cum vedeţi widget-ul poate fi activat/dezactivat din Opţiuni pagină.

imagine

[PHP]function widget_date_contact(){
wp_add_dashboard_widget(‘widget_contact’, ‘Date pentru contact’, ‘widget_date_contact_functia’);
}

function widget_date_contact_functia(){
echo ‘<p><strong>Când daţi de probleme…</strong></p>’;
echo ‘<p>sunaţi-mă la 07123-456789 sau trimiteţi un email la urgent@deparariwp.ro</p>’;
}

add_action(‘wp_dashboard_setup’, ‘widget_date_contact’);[/PHP]

Evident, widget-ul poate fi făcut mult mai util. Puteţi afişa acolo statistici personalizate sau alte lucruri utile. Un foarte simplu exemplu: dacă vrem să facem un widget care să arate cele mai comentate articole corpul funcţiei ce dă conţinutul widget-ului va fi următorul:

[PHP] global $wpdb;
$popular = ‘<p>Articole comentate…</p>’;
$posts = $wpdb->get_results("SELECT comment_count, ID, post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 5");
foreach ($posts as $post) {
setup_postdata($post);
$id = $post->ID;
$title = $post->post_title;
$count = $post->comment_count;
if ($count != 0) {
$popular .= ‘<li>’;
$popular .= ‘<a href="’ . get_permalink($id) . ‘" title="’ . $title . ‘">’ . $title . ‘</a> ‘;
$popular .= ‘</li>’;
}
}
echo $popular;[/PHP]


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (1 evaluări, media: 5,00 din 5)
Loading...Loading...

0 comentarii


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *