Oggi vi mostro alcuni snippet che permettono di personalizzare alcuni aspetti del backend di WordPress senza utilizzare plugins esterni. Tramite queste funzioni possiamo cambiare il logo, il footer, la dashboard ed alcuni altri particolari del pannello di amministrazione. Vediamo come fare.

Personalizzare il logo di login

La prima cosa che nota un cliente quando gli diciamo di raggiungere la pagina “wp-admin” è la presenza del logo di WordPress al posto del suo marchio. Certamente non sarà un elemento drammatico, ma rientra in tutta quella serie di piccole accortezze che permettono di offrire un servizio complessivo di qualità superiore. Vediamo come cambiare il logo di default attraverso una semplice modifica del file functions.php

function my_custom_login_logo() {
    echo '<style type="text/css">
        h1 a { background-image:url('.get_bloginfo('template_directory').'/images/logo_cliente.png) !important; }
    </style>';
}

add_action('login_head', 'my_custom_login_logo');

Attraverso questa funzione andiamo a forzare la scelta del logo utilizzando quello da noi prescelto. Nell’esempio in particolare si sta scegliendo di prendere il file logo_cliente.png che si trova nella cartella images del nostro tema. Se utilizzate un logo di dimensioni differenti da quelle standard, potrete aggiungere al codice CSS le vostre nuove dimensioni. Ricordatevi sempre di lasciare circa 30-40px di margine sotto affinchè vengano correttamente visualizzati i messaggi di errore.

Personalizzare il link del logo

Una volta aggiornato il logo, ci accorgiamo però che se ci clicchiamo sopra verremo reindirizzati all’homepage di wordpress. Ma noi non vogliamo che ciò accada, quindi aggiungiamo una breve funzione che cambi l’url ed il title che compare passando sull’immagine:

function cambia_url_logo(){
    echo bloginfo('url');  // L'homepage del tuo sito
}
add_filter('login_headerurl', 'cambia_url_logo');

function cambia_title_login(){
    echo "Il mio è un bel sito"; // Cambia con quello che vuoi
}
add_filter('login_headertitle', 'cambia_title_login');

Personalizzare l’icona della dashboard

Anche questa è una finezza diciamocelo, ma sempre per il discorso “qualità” è bene che anche i piccoli dettagli vengano presentati nel migliore dei modi. Scriviamo quindi, sempre nel file function.php, quanto segue per sostituire l’immaginetta di default di WordPress. Per quanto riguarda la spiegazione del codice valgono le medesime indicazioni fornite nel primo esempio della lista:

function admin_logo_personalizzato() {
    echo '';
}
add_action('admin_head', 'admin_logo_personalizzato');

Personalizzare il footer della dashboard

Questo è il luogo dell’autocompiacimento, qui infatti, al posto degli ennesimi riferimenti a WordPress, potremo scrivere i ringraziamenti a chi ha sviluppato il sito (noi :P) inserendo un bel link al nostro portfolio! Ecco come fare:

function credits_footer_admin (){
    echo 'Realizzato da Davide De Maestri';
}
add_filter('admin_footer_text', 'credits_footer_admin ');

Rimuovere sezioni superflue dalla dashboard

Okay, appena entrati nel backend di WordPress un cliente potrebbe, preso da smanie di click, iniziare a puntare ovunque alla ricerca del tesoro perduto. Stop. Fermiamolo in anticipo andando a togliere tutti i metabox che istigano allauto-distruzione.

function example_remove_dashboard_widgets() {
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
}
add_action('wp_dashboard_setup', 'example_remove_dashboard_widgets' );

Per la lista di tutti i metabox removibili, vi rimando alla documentazione ufficiale: http://codex.wordpress.org/Dashboard_Widgets_API