Home>Guide>Creare un widget personalizzato sulla dashboard di WordPress

Creare un widget personalizzato sulla dashboard di WordPress


Creare un widget personalizzato sulla dashboard di WordPress


La dashboard di WordPress è una sorta di bacheca che propone all’amministratore del sito un riassunto delle attività ed informazioni più importanti del sito. Ma oltre ai widget già presenti di default, è possibile crearne di propri, così da rendere l’esperienza con WordPress migliore e più adatta alle proprie esigenze.

  • Leggi l'articolo, ti bastano solo 2 minuti, 3 secondi
    Sei di fretta? Scarica il PDF e consultalo quando vuoi!

Dashboard widget API

Dalla versione 2.7, WordPress rende possibile tutto ciò, aggiungendo appunto le Dashboard Widget API, una serie di funzioni che permettono in pochi passi di creare il widget che più risponde alle tue esigenze.


Un semplice widget di visualizzazione

Per mostrare quanto è semplice creare il tuo primo widget personalizzato sulla dashboard di WordPress, ipotizza di voler visualizzare quanti sono gli articoli del tuo sito in stato di “bozza”.

La funzione principale messa a disposizione da WordPress è wp_add_dashboard_widget().

La funzione prevede in ingresso quattro parametri, di cui solo i primi tre obbligatori:

$widget_id: l’identificativo del widget che viene generato, deve essere univoco ed informato slug
(string) – (obbligatorio)
default: nessuno

$widget_name: il nome del widget che, è anche l’intestazione del box che lo contiene
(string) – (obbligatorio)
default: nessuno

$callback: il nome della funzione che genera il contenuto del widget
(string) – (obbligatorio)
default: nessuno

$control_callback: il nome della funzione che gestisce i valori inviati da un eventuale form presente nel widget
(string) – (opzionale)
default: null


Dalla teoria alla pratica

Fatto qualche cenno teorico sulla funzione necessaria a generare il tuo primo widget per la dashboard di WordPress, passiamo a scrivere il codice vero e proprio. Aggiungi al file functions.php del tuo tema, che trovi nello spazio FTP del tuo sito, in:

wp-content/themes/{nome_del_tema}/

le seguenti linee di codice:

// Aggiunge un widget alla dashboard di WordPress
add_action( 'wp_dashboard_setup', function() {

	wp_add_dashboard_widget( 'wp_drafts', __( 'Articoli in bozze' ), function() {
		$query = new WP_Query( array(
			'post_status' => ‘draft’
		) );
		printf( __( 'Articoli attualmente in bozze: %s' ), '<strong>' . $query->found_posts . '</strong>' );
	} );

} );

Ed ecco fatto! Con pochissime righe di codice, otterrai il tuo widget. Ovviamente, puoi personalizzare la funzione che regola l’output del widget come preferisci, visualizzando tutte le informazioni che preferisci e di cui hai più bisogno, ottenendo una bacheca più funzionale e più professionale.



Ti è piaciuto questo articolo? Regalami un click per ripagarmi dello sforzo



Code4Life ti è stato utile? Sostienici con una donazione!

Dona con PayPal

Hai trovato interessante l’articolo? Allora ti consiglio di leggere:

Come creare un modulo per Magento

Come creare un modulo per Magento


Hai bisogno di aggiungere una funzionalità personalizzata al tuo Magento ma non sai neanche da dove partire? Segui la guida, imparerai in modo semplice come creare il tuo primo modulo per Magento.

Come aggiungere campi personalizzati in WooCommerce

Come aggiungere campi personalizzati in WooCommerce


Scopriremo adesso come creare campi personalizzati per WooCommerce, fornendo agli utenti schede tecniche sui prodotti più dettagliate, così da rendere la tua piattaforma e-commerce più completa ed usabile.

Oppure cerca tra gli articoli correlati


E tu cosa ne pensi? Condividi la tua opinione e discutiamone insieme
La tua email non sarà resa pubblico o utilizzata per inviarti spam, te lo prometto

Iscrivimi alla newsletter per ricevere news ed aggiornamenti
Utilizziamo piattaforme di terze parti per l’invio di newsletter. (Privacy Policy)
Tienimi aggiornato su questo articolo
Ricevi una email di notifica quando qualcuno scriverà un commento a questo articolo. (Privacy Policy)
Ricorda i miei dati per la prossima volta che scriverò un commento
Il tuo nome e la tua email verranno salvati in un cookie in questo browser. (Privacy Policy)