Personalizzazione dell'amministratore di WordPress menu di amministrazione personalizzati

Nelle prime due parti di questa serie, ti ho mostrato come personalizzare la schermata di accesso di WordPress e la dashboard. In questa terza parte ti mostrerò come personalizzare i menu di amministrazione in WordPress.

In questo tutorial imparerai come:

  1. Rinominare una voce di menu (in questo caso, "Post")
  2. Rimuovi una voce di menu (in questo caso, 'Commenti')
  3. Riordina il tuo menu in modo che gli elementi che usi più frequentemente siano più in alto

Creerò un plugin per farlo - se hai già creato un plugin dopo aver seguito le parti 1 e 2 di questa serie potresti preferire aggiungere il codice da questo tutorial a quel plugin, dandoti un plugin con tutti la personalizzazione dell'amministratore.


Cosa è necessario per completare questo tutorial

Per completare questo tutorial avrai bisogno di:

  • Un'installazione di WordPress
  • Accedi alla cartella dei plug-in del tuo sito per aggiungere il tuo plug-in
  • Un editor di testo per creare il tuo plugin

Impostazione del plugin

All'inizio del mio plugin, sto aggiungendo le seguenti linee:

 / * Nome plugin: WPTutsPlus Personalizza l'Admin Parte 3 - menu di amministrazione URI plugin: http://rachelmccollin.co.uk Descrizione: Questo plugin supporta il tutorial in wptutsplus. Personalizza il dashboard di WordPress. Versione: 1.0 Autore: Rachel McCollin Autore URI: http://rachelmccollin.com Licenza: GPLv2 * /

1. Rinominare una voce di menu

La maggior parte dei siti che creo in WordPress non sono blog: sono generalmente siti client che, se usano post, li useranno per notizie piuttosto che per post di blog. Quindi ho intenzione di rinominare "Post" nel menu di amministrazione su "Notizie". Puoi rinominare qualsiasi tipo di contenuto di WordPress come vuoi, ad esempio:

  • i post potrebbero diventare notizie, articoli o aggiornamenti
  • i media potrebbero diventare immagini, allegati o caricamenti

Per rinominare i post, aggiungi il seguente codice al tuo plugin:

 // Rinomina i post in Notizie nella funzione Menu wptutsplus_change_post_menu_label () global $ menu; sottomenu $ globale; $ menu [5] [0] = 'Notizie'; $ submenu ['edit.php'] [5] [0] = 'Novità articoli'; $ submenu ['edit.php'] [10] [0] = 'Aggiungi elemento notizie';  add_action ('admin_menu', 'wptutsplus_change_post_menu_label');

Questo codice fa riferimento a menu di $ e $ sottomenu variabili globali - i numeri tra parentesi quadre indicano a WordPress a quali voci del menu mi riferisco, poiché ogni voce di menu ha il proprio numero che corrisponde al suo ordine nel menu. Allego la mia funzione per rinominare i post su admin_menu hook, che è il hook di azione che userò in questo tutorial.

Questo cambia il menu di amministrazione come mostrato nello screenshot:

Nota: la Dashboard mostrata nello screenshot è stata personalizzata in modo che non assomigli al dashboard standard. Vedere la parte 2 di questa serie per ulteriori dettagli.

Come puoi vedere, dove normalmente si trova il menu 'Post', si legge 'Notizie'. Questo ti dà accesso ai post nello stesso modo di prima ma con un'etichetta diversa. Il tipo di post non è cambiato.

Il passo successivo è rinominare gli elementi del sottomenu per i post e qualsiasi altro uso del termine "post" nelle schermate di amministrazione.

Nel tuo plugin, aggiungi quanto segue:

 // Modifica la funzione dei sottomenu wptutsplus_change_post_object_label () global $ wp_post_types; $ labels = & $ wp_post_types ['post'] -> etichette; $ labels-> name = 'News'; $ labels-> singular_name = 'News Item'; $ labels-> add_new = 'Aggiungi elemento news'; $ labels-> add_new_item = 'Aggiungi elemento news'; $ labels-> edit_item = 'Modifica elemento news'; $ labels-> new_item = 'News Item'; $ labels-> view_item = 'Visualizza articolo News'; $ labels-> search_items = 'Cerca nelle notizie'; $ labels-> not_found = 'No News Items found'; $ labels-> not_found_in_trash = 'Nessuna notizia trovata nel cestino';  add_action ('admin_menu', 'wptutsplus_change_post_object_label');

Ora non solo la voce di menu di primo livello è cambiata, ma tutti i riferimenti ai post, come mostrato nello screenshot:

Il sottomenu presenta nuove etichette, come il link "Aggiungi elemento novità" e il titolo della schermata di modifica.


2. Rimozione delle voci di menu

Il menu di amministrazione è più vicino a riflettere la struttura dei miei siti client, ora che i post sono indicati come notizie. Ma posso semplificare ulteriormente le cose rimuovendo tutte le voci di menu che non mi servono.

Nella maggior parte dei siti client che costruisco, i commenti sono disattivati. Quindi posso rimuoverli dal menu di amministrazione per evitare di confondere i clienti.

Nel tuo plugin, aggiungi quanto segue:

 // Rimuovi la voce di menu Comments per tutti tranne la funzione Administrators wptutsplus_remove_comments_menu_item () $ user = wp_get_current_user (); if (! $ user-> ha_cap ('manage_options')) remove_menu_page ('edit-comments.php');  add_action ('admin_menu', 'wptutsplus_remove_comments_menu_item');

Questo usa il remove_menu_page agganciare lo slug per la pagina di modifica dei commenti, che è edit-comments.php.

Nota: ho incluso la funzione in un controllo per manage_options capacità, in modo che la voce di menu Commenti non sia nascosta agli amministratori, per ogni evenienza!

Come puoi vedere nello screenshot, la voce del menu Commenti è stata rimossa.


3. Riordinare le voci di menu

La personalizzazione finale che sto per fare è riordinare il menu di amministrazione, in modo che gli elementi che i miei clienti utilizzeranno più frequentemente siano più in alto. In questo caso, ho intenzione di spostare la voce di menu Pagine sopra il supporto.

Lo fai usando due filtri:

  • custom_menu_order, che attiva il menu_order filtro e deve avere __return_true come il suo valore.
  • menu_order, a cui si allega la propria funzione che definisce il nuovo ordine di menu.

Nel tuo plugin, aggiungi quanto segue:

 // Sposta le pagine sopra la funzione Media wptutsplus_change_menu_order ($ menu_order) return array ('index.php', 'edit.php', 'edit.php? Post_type = page', 'upload.php',);  add_filter ('custom_menu_order', '__return_true'); add_filter ('menu_order', 'wptutsplus_change_menu_order');

Questo riordina il menu nell'ordine specificato nell'array, in modo che il Media appaia dopo le Pagine. Ora hai un semplice menu di amministrazione personalizzato.


Sommario

La personalizzazione del menu di amministrazione di WordPress può rendere il processo di gestione di un sito più semplice e veloce per te e per i tuoi clienti, dando agli elementi di menu etichette più appropriate, rimuovendo elementi indesiderati e assicurando che il menu sia nell'ordine più utile. Puoi farlo ulteriormente spostando verso l'alto e verso il basso qualsiasi tipo di messaggio personalizzato nel tuo menu, rinominando forse i media e altro.