Avvisi di amministratore WordPress persistenti parte 1

Le notifiche di amministrazione di WordPress forniscono un modo conveniente per visualizzare messaggi agli utenti nell'area di amministrazione, ad es. dopo che un post è stato aggiornato o se è stato attivato un plug-in. Vengono inoltre utilizzati da molti temi e plug-in per visualizzare notifiche su qualsiasi cosa, dalle nuove funzionalità o avvisi di sicurezza ai dettagli sulle promozioni in corso o sui prompt di aggiornamento.

Il core di WordPress fornisce quattro diversi avvisi di amministrazione che possono essere usati contestualmente per avvisare un utente di un tipo specifico di avviso. Ciò si ottiene visualizzando un colore di accento unico per ogni tipo di avviso di amministrazione.

Le note di amministrazione vengono solitamente visualizzate nella parte superiore di ogni pagina di amministrazione per distinguersi dai contenuti della pagina principale e risultare chiaramente evidenti. Sono elegantemente progettati in modo da non essere troppo estetici.

WordPress riutilizza anche le notifiche di amministratore in altre posizioni nell'interfaccia di amministrazione, come quando è disponibile un aggiornamento di temi o plug-in. L'uso principale delle notifiche di amministrazione non si limita a essere visualizzato nella parte superiore della schermata di amministrazione.

La visualizzazione di un avviso di amministrazione in un plug-in o tema personalizzato è relativamente semplice e richiede solo poche righe di codice, come scopriremo a breve. Tuttavia, WordPress non fornisce un modo predefinito per ignorare una notifica di amministratore persistente.

Anche se puoi aggiungere un pulsante di espulsione a qualsiasi notifica di amministrazione, questo non impedisce che riappaia quando la pagina viene ricaricata. Inoltre, le notifiche di amministrazione vengono visualizzate su ogni pagina di amministrazione, che è tutt'altro che ideale.

Se si desidera avere un controllo granulare su esattamente quando e dove vengono visualizzati gli avvisi di amministrazione e poterli eliminare in modo efficace, è necessario aggiungere codice personalizzato per modificare il comportamento predefinito.

Cosa copriremo

Iniziamo dall'inizio e esploriamo le basi per l'implementazione di notifiche di amministrazione tramite un plug-in personalizzato, inclusa la visualizzazione solo su pagine specifiche nell'amministratore di WordPress.

Le notifiche di amministrazione vengono visualizzate su ogni pagina per impostazione predefinita, che non è sempre quella che desideri. Ad esempio, potresti voler solo visualizzare una notifica su una pagina di opzioni del plugin. Pertanto, il nostro prossimo punto di riferimento sarà la visualizzazione condizionale delle notifiche amministrative a seconda della schermata di amministrazione corrente.

Partendo da questo, introdurremo dei modi per gestire ulteriormente le notifiche degli amministratori tramite il controllo quando anche loro appaiono. Anziché apparire non appena la pagina viene caricata, verranno visualizzati solo se vengono soddisfatte determinate condizioni di attivazione. Ciò potrebbe essere utile, ad esempio, se si desidera visualizzare un avviso di amministrazione su una pagina di opzioni del plugin, ma solo dopo che le impostazioni sono state salvate.

Come accennato in precedenza, non esiste un modo semplice per eliminare le notifiche di amministratore persistenti tra i carichi di pagina. Quindi il resto della serie di tutorial si concentrerà principalmente sui vari metodi che è possibile utilizzare per eliminare le notifiche di amministratore in modo che non riappariranno inaspettatamente.

Infine, per un po 'di divertimento, vedremo come è possibile creare i propri tipi di avviso di amministrazione personalizzati e aggiungere ulteriori decorazioni come icone alle notifiche di amministrazione.

Alla fine di questa serie di tutorial, sarai in grado di visualizzare qualsiasi tipo di avviso amministrativo ovunque all'interno dell'amministratore di WordPress. Inoltre, sarai in grado di decidere se visualizzarli al caricamento della pagina o tramite un'azione personalizzata e sarai anche in grado di eliminarli in una varietà di modi diversi, a seconda delle tue esigenze.

Vuoi seguire?

Otterrai il massimo da questa serie di tutorial se seguirai mentre creiamo ogni esempio di notifica di amministratore. Il codice viene presentato in un approccio passo-passo per consentire di creare un plug-in funzionante da soli mentre procediamo con il tutorial. Tuttavia, se non si desidera digitare tutto il codice da soli, il plugin finito sarà disponibile per il download nella quarta parte.

Si presume che tu abbia almeno una conoscenza rudimentale dello sviluppo di plugin per WordPress, incluso il funzionamento degli hook. In caso contrario, ti consiglio di leggere questi argomenti tramite la documentazione ufficiale di WordPress prima di continuare:

  • Introduzione allo sviluppo di plugin
  • Scrivere un plugin
  • Ganci WordPress

Per testare il codice del plugin per ciascun esempio, è necessario un sito WordPress funzionante. Il modo più semplice per farlo è installare WordPress localmente in modo da poter accedere facilmente ai file di modifica. 

Ci sono molte scelte per lo sviluppo locale con WordPress, tra cui:

  • Local by Flywheel
  • DesktopServer
  • MAMP (e MAMP PRO)
  • Vagabondo

Se sei nuovo nello sviluppo di WordPress allora Local o DesktopServer sono probabilmente più facili da configurare. Local è libero di usare (hanno una versione premium in lavorazione), e DesktopServer ha una versione limitata (gratuita) più una versione premium disponibile.

Inoltre, sono raccomandate alcune precedenti esperienze di PHP e JavaScript, così come alcune esperienze di implementazione delle richieste Ajax. Tuttavia, tutto sarà spiegato lungo la strada, quindi non è richiesta una conoscenza approfondita.

Uno sguardo più da vicino alle note di amministrazione

Diamo un'occhiata all'implementazione più basilare di un avviso di amministrazione e al codice richiesto per visualizzare un avviso di tipo riuscito.

function display_admin_notice () ?> 

Il segreto del successo è sapere qualcosa che nessun altro conosce ~ Aristotele Onassis

Tutto quello che abbiamo fatto qui è stato registrare il display_admin_notice () funzione che verrà eseguita quando il admin_notices agganciare i fuochi. Non importa ciò che viene chiamata la funzione registrata: non influirà sul modo in cui viene visualizzata l'avviso di amministrazione.

Non preoccuparti di inserire il codice sopra te stesso adesso; concentrati solo su come viene generato l'avviso di amministrazione, come lo svilupperemo nei tutorial successivi.

Puoi utilizzare qualsiasi markup che ti piace per visualizzare un avviso di amministrazione; tuttavia, il formato consigliato è il seguente:

Messaggio

Sostituire classe con un elenco di nomi di classi CSS. Dovresti includere la classe Avviso più una delle seguenti classi per determinare il tipo di avviso di amministrazione:

  • avviso di errori (rosso)
  • avviso di allerta (Giallo / arancio)
  • comunicazione-successo (verde)
  • comunicazione-info (blu)

Il Messaggio il blocco può essere qualsiasi testo o HTML valido che verrà visualizzato all'interno della notifica di amministrazione.

L'esempio sopra mostra le notifiche di amministrazione su tutte le pagine di amministrazione, che non è sempre l'ideale, quindi nella seconda parte vedremo come è possibile controllare esattamente quali pagine appaiono su.

C'è un'altra classe CSS incorporata che puoi aggiungere div.notice che aggiunge un pulsante di espulsione all'avviso di amministrazione. Vediamo cosa succede quando lo stesso avviso di amministrazione di successo ha il è-dismissible classe aggiunta ad essa.

function display_admin_notice () ?> 

Il segreto del successo è sapere qualcosa che nessun altro conosce ~ Aristotele Onassis

Ora abbiamo un modo semplice per eliminare un avviso di amministrazione. Tuttavia, prima di essere troppo eccitato, c'è un problema con l'utilizzo di questo metodo. Se aggiorni la pagina, riappare l'avviso di amministrazione! Pertanto, anche se è possibile impostare un avviso di amministrazione per essere eliminabile, è persistente e lo stato dismesso viene dimenticato tra i carichi di pagina.

Tratteremo in seguito gli avvisi di amministrazione persistenti in dettaglio e esploreremo vari modi per respingerli senza che riappaiano.

Ma gli avvisi amministrativi sono cattivi! Non sono loro?

Se hai familiarità con le notifiche di amministratore in WordPress e / o tieniti aggiornato sulle notizie di WordPress in generale, potresti essere a conoscenza di una certa quantità di negatività riguardo all'utilizzo delle notifiche di amministrazione in plugin e temi personalizzati.

Ciò deriva da alcuni plug-in che sfruttano le notifiche di amministrazione nel tentativo di ottenere i loro messaggi "importanti". Se hai installato molti plug-in e solo pochi di loro abusano del sistema di notifica dell'amministratore, puoi rapidamente finire con l'avviso di amministrazione "zuppa", in cui un intero groviglio di avvisi viene visualizzato nella parte superiore di ogni pagina di amministrazione.

Il sovraccarico delle schermate di amministrazione con notifiche non necessarie può causare caos (e mal di testa) ed è comprensibilmente fastidioso per gli utenti in quanto rende più difficile la gestione di un sito.

Idealmente, solo le note di amministrazione importanti, come gli aggiornamenti di sicurezza critici, dovrebbero essere visualizzati su ogni caricamento della pagina. Se visualizzi avvisi amministrativi globali per comunicare agli utenti che un plug-in è appena stato aggiornato e ti viene chiesto di fare clic su un link per ulteriori informazioni, dovresti davvero chiedertelo se è necessario che sia presente in ogni pagina di amministrazione.

Inoltre, un preferito tipico è visualizzare un avviso di amministratore non critico che non può essere facilmente rimosso in modo permanente. Ti garantisco che non esiste un modo più semplice per alienare gli utenti del tuo plugin piuttosto che farlo!

Tuttavia, esistono casi d'uso per avvisi persistenti che non sono eliminabili, come gli aggiornamenti del database. I plugin che utilizzano tabelle personalizzate potrebbero dover eseguire routine di aggiornamento del database una volta ogni tanto per mantenere il plugin in esecuzione correttamente. Quindi, in questo caso, è ragionevole aggiungere un avviso amministrativo non eliminabile.

Una buona regola empirica è semplicemente impiegare il buonsenso. L'amministratore notato che stai per aggiungere al tuo plugin ti infastidisce come utente? In tal caso, potresti voler ripensare aggiungendo l'avviso o considerare se sarebbe meglio visualizzarlo in una posizione alternativa.

Conclusione

In questo tutorial, abbiamo trattato quali sono le note di amministrazione e i vari tipi predefiniti forniti da WordPress, incluso un avviso amministrativo respinto. Come abbiamo visto, ci sono alcuni svantaggi nell'implementazione predefinita delle notifiche di amministrazione, come non essere eliminabili e il fatto che siano visualizzate su ogni pagina di amministrazione.

WordPress ha un'economia incredibilmente attiva. Ci sono temi, plugin, librerie e molti altri prodotti che ti aiutano a costruire il tuo sito e progetto. La natura open source della piattaforma lo rende anche un'ottima opzione da cui puoi migliorare le tue capacità di programmazione. In ogni caso, puoi vedere cosa abbiamo a disposizione Envato Market.

Il resto delle esercitazioni di questa serie si concentrerà su come estendere le notifiche di amministrazione per renderle più pratiche se utilizzate nei tuoi plugin e temi.