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:
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.
For å fullføre denne opplæringen trenger du:
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 * /
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:
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.
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.
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.
Å 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.