Tilpasse WordPress Admin Tilpassede Admin Menyer

I de to første delene av denne serien viste jeg deg hvordan du tilpasser WordPress-påloggingsskjermen og dashbordet. I denne tredje delen vil jeg vise deg hvordan du tilpasser administrasjonsmenyene i WordPress.

I denne opplæringen lærer du hvordan du:

  1. Gi nytt navn til et menyelement (i dette tilfellet 'Innlegg')
  2. Fjern et menyelement (i dette tilfellet 'Kommentarer')
  3. Omorganiser menyen, slik at elementene du bruker oftere, er høyere opp

Jeg skal lage et plugin for å gjøre dette - hvis du allerede har opprettet et plugin etter å ha fulgt deler 1 og 2 i denne serien, kan du foretrekke å legge til koden fra denne opplæringen til det aktuelle pluginet, noe som gir deg en plugin med alle Din admin tilpasning.


Hva du trenger for å fullføre denne opplæringen

For å fullføre denne opplæringen trenger du:

  • En WordPress-installasjon
  • Tilgang til nettstedets plugin-mappe for å legge til plugin
  • En tekstredigerer for å lage ditt plugin

Sette opp pluggen

I begynnelsen av pluginet legger jeg til følgende linjer:

 / * Plugin Name: WPTutsPlus Tilpass Admin Part 3 - admin menyer Plugin URI: http://rachelmccollin.co.uk Beskrivelse: Denne plugin støtter opplæringen i wptutsplus. Det tilpasser WordPress-dashbordet. Versjon: 1.0 Forfatter: Rachel McCollin Forfatter URI: http://rachelmccollin.com Lisens: GPLv2 * /

1. Endre navn på en menyelement

De fleste nettstedene jeg bygger i WordPress, er ikke blogger - de er vanligvis klientsteder som, hvis de bruker innlegg, vil bruke dem til nyheter i stedet for blogginnlegg. Så jeg skal gi nytt navn til 'Innlegg' i admin-menyen til 'Nyheter'. Du kan endre navn på en hvilken som helst WordPress-innholdstype til det du vil, for eksempel:

  • Innlegg kan bli nyheter, artikler eller oppdateringer
  • media kan bli bilder, vedlegg eller opplastinger

For å gi nytt navn til innlegg, legg til følgende kode i plugin:

 // Gi nytt navn til Innlegg til Nyheter i menyfunksjon wptutsplus_change_post_menu_label () global $ menu; global $ undermeny; $ meny [5] [0] = 'Nyheter'; $ undermeny ['edit.php'] [5] [0] = 'Nyhetsartikler'; $ undermeny ['edit.php'] [10] [0] = 'Legg til nyhetsartikler';  add_action ('admin_menu', 'wptutsplus_change_post_menu_label');

Denne koden refererer til $ menyen og $ undermeny globale variabler - tallene i firkantede parenteser forteller WordPress hvilke menyelementer jeg refererer til, da hvert menyelement har sitt eget nummer som tilsvarer sin rekkefølge i menyen. Jeg legger til min funksjon for å gi nytt navn til innlegg til admin_menu krok, som er handlingen kroken jeg skal bruke gjennom denne opplæringen.

Dette endrer administrasjonsmenyen som vist på skjermbildet:

Merk: Dashbordet som vises i skjermbildet, er tilpasset, slik at det ikke ser ut som standard dashbord. Se del 2 i denne serien for flere detaljer.

Som du kan se, hvor «Innlegg» -menyen normalt er, leser den «Nyheter». Dette gir deg tilgang til innlegg på samme måte som før, men med en annen etikett. Posttypen er ikke endret.

Det neste trinnet er å endre navn på undermenyelementene for innlegg, og enhver annen bruk av begrepet "innlegg" i administrasjonsskjermbildene.

I ditt plugin legger du til følgende:

 // Rediger undermenyer funksjon wptutsplus_change_post_object_label () global $ wp_post_types; $ labels = & $ wp_post_types ['post'] -> etiketter; $ labels-> name = 'Nyheter'; $ labels-> singular_name = 'News Item'; $ labels-> add_new = 'Legg til nyhetsartikler'; $ labels-> add_new_item = 'Legg til nyhetselement'; $ labels-> edit_item = 'Rediger nyhetsart'; $ labels-> new_item = 'News Item'; $ labels-> view_item = 'Vis nyhetsart'; $ labels-> search_items = 'Søk etter nyhetsartikler'; $ labels-> not_found = 'Ingen nyhetsartikler funnet'; $ labels-> not_found_in_trash = 'Ingen nyhetsartikler funnet i Papirkurv';  add_action ('admin_menu', 'wptutsplus_change_post_object_label');

Nå er ikke bare bare toppnivå menyelementet endret, men alle referanser til innlegg, som vist på skjermbildet:

Undermenyen har nye etiketter, som kobler til "Legg til nyhetsartikkel" -linken og redigeringskjermtittelen.


2. Fjerne menyelementer

Administrasjonsmenyen er nærmere gjenspeiler strukturen på klientene mine, nå som innlegg blir referert til som nyhetsartikler. Men jeg kan forenkle ting ytterligere ved å fjerne menyelementer jeg ikke trenger.

På de fleste kundesider jeg bygger, er kommentarer slått av. Så jeg kan fjerne dem fra administrasjonsmenyen for å unngå forvirrende kunder.

I ditt plugin legger du til følgende:

 // Fjern kommentarer menyelement for alle, men Administratorer funksjon wptutsplus_remove_comments_menu_item () $ user = wp_get_current_user (); hvis (! $ user-> has_cap ('manage_options')) remove_menu_page ('edit-comments.php');  add_action ('admin_menu', 'wptutsplus_remove_comments_menu_item');

Dette bruker remove_menu_page krok med sluggen for kommentarredigeringssiden, som er redigerings comments.php.

Merk: Jeg har vedlagt funksjonen i en sjekk for manage_options evnen, slik at menyelementet Kommentarer ikke vil bli skjult for administratorer, bare i tilfelle!

Som du kan se på skjermbildet, har menyelementet Kommentarer nå blitt fjernet.


3. Omorganisere menyelementer

Den endelige tilpasningen jeg skal gjøre er å omorganisere administrasjonsmenyen, slik at elementer mine klienter vil bruke oftere, er høyere opp. I dette tilfellet skal jeg flytte menyelementet Sider over media.

Du gjør dette ved hjelp av to filtre:

  • custom_menu_order, som aktiverer menu_order filter og må ha __return_true som sin verdi.
  • menu_order, som du legger til din funksjon som definerer den nye menyrekkefølgen.

I ditt plugin legger du til følgende:

 // Flytt sider over Mediefunksjon wptutsplus_change_menu_order ($ menu_order) return array ('index.php', 'edit.php', 'edit.php? Post_type = side', 'upload.php',);  add_filter ('custom_menu_order', '__return_true'); add_filter ('menu_order', 'wptutsplus_change_menu_order');

Dette vil omordne menyen i den rekkefølgen som er angitt i arrayen, slik at Media vises etter Sider. Du har nå en enkel tilpasset admin-meny.


Sammendrag

Å tilpasse WordPress admin-menyen kan gjøre prosessen med å administrere et nettsted enklere og raskere for deg selv og dine kunder ved å gi menyelementer mer passende etiketter, fjerne uønskede elementer og sikre at menyen er i den mest nyttige rekkefølgen. Du kan ta dette videre ved å flytte alle egendefinerte innleggstyper opp og ned i menyen, omdøpe medier kanskje, og mer.