De backend van WordPress is een van de betere die er zijn. Afhankelijk van uw behoeften kan het menu echter een beetje vol met pluis zijn dat u daar gewoon niet wilt of nodig hebt.
In deze zelfstudie laat ik je zien hoe je je admin-menu kunt temmen. Ik zal je laten zien hoe je menu's kunt hernoemen, de menu's opnieuw kunt ordenen of ze gewoon kunt verwijderen zonder de kern aan te raken. Omdat het raken van de kern slecht is.
Soms wilt u wellicht een van de beheerdersmenu's hernoemen. U voert bijvoorbeeld een receptsite uit en u gebruikt "Posts" om recepten te vermelden in plaats van een blog.
Om dit te doen, moet u de ADMIN_MENU actie haak. Het wordt gebruikt voor het toevoegen van submenu's aan het admin-menu of andere overige opties die met het menu moeten worden gedaan.
Eerst moet je een functie maken en deze vervolgens koppelen aan de actieknop in de functions.php
van je thema.
function edit_admin_menus () global $ menu; add_action ('admin_menu', 'edit_admin_menus');
Het WordPress-beheerdersmenu is feitelijk opgeslagen in een array ($ -menu). Dus eerst zoals je ziet, edit_admin_menus
gebruikt $ menu global om de array te krijgen. Nu moet u de sleutel identificeren die hoort bij het menu dat u wilt hernoemen. Aan het einde van deze tutorial wordt een lijst met alle menu's en submenu's verstrekt.
Omdat we het menu "Posts" wilden veranderen in "Recepten", weten we dat we ons moeten richten op "5":
function edit_admin_menus () global $ menu; $ menu [5] [0] = 'Recepten'; // Wijzig berichten in recepten add_action ('admin_menu', 'edit_admin_menus');
Geloof het of niet, dat is alles wat er is. Opslaan functions.php
, en vernieuw de beheerderspagina. Maar nu komen de submenu's niet overeen met de nieuwe naam.
Het hernoemen van submenu's is bijna hetzelfde, behalve dat u het $ submenu globaal moet toevoegen, en u zult ook de link-URI targeten. Dus bijvoorbeeld het wijzigen van "Alle berichten" naar "Alle recepten" ziet er ongeveer zo uit:
$ submenu ['edit.php'] [5] [0] = 'Alle recepten';
U kunt dit voor elk submenu-item doen. Alles bij elkaar, edit_admin_menus
zou er ongeveer zo uitzien
function edit_admin_menus () global $ menu; globaal $ submenu; $ menu [5] [0] = 'Recepten'; // Wijzig berichten in recepten $ submenu ['edit.php'] [5] [0] = 'Alle recepten'; $ submenu ['edit.php'] [10] [0] = 'Een recept toevoegen'; $ submenu ['edit.php'] [15] [0] = 'Maaltijden'; // Hernoem categorieën naar maaltijdtypen $ submenu ['edit.php'] [16] [0] = 'Ingrediënten'; // Hernoem tags naar ingrediënten add_action ('admin_menu', 'edit_admin_menus');
Het berichtenmenu is nu omgevormd naar een receptenmenu. Dit proces werkt voor alle menu's van het Dashboard tot Instellingen en hun submenu's.
Nu ga ik je laten zien hoe je de volgorde van de menu's kunt wijzigen, inclusief de scheidingstekens. Ik heb meestal de voorkeur aan Media en Links om meer naar de bodem toe te gaan, omdat ik ze niet zo vaak gebruik als Pages en Comments.
Voor het bestellen van het admin-menu moet het filter menu_order worden gebruikt. Voor het filter menu_order moet u echter eerst custom_menu_order activeren. Dus eerst wil je deze code in je plaatsen functions.php
.
function custom_menu_order ($ menu_ord) if (! $ menu_ord) return true; return array ('index.php', // Dashboard 'separator1', // Eerste scheiding 'edit.php', // Posts 'upload.php', // Media 'link-manager.php', // Links ' edit.php? post_type = pagina ', // Pagina's' edit-comments.php ', // Reacties' separator2 ', // Tweede scheidingsteken' themes.php ', // Uiterlijk' plugins.php ', // Plugins' users.php ', // Gebruikers' tools.php ', // Tools' options-general.php ', // Instellingen' separator-last ', // Laatste scheidingsteken); add_filter ('custom_menu_order', 'custom_menu_order'); // Activeer custom_menu_order add_filter ('menu_order', 'custom_menu_order');
De volgorde van de menu's is van boven naar beneden, dus welk ooit menu dat u bovenaan de array plaatst, is het eerste menu. Als u niet een van de standaard menu-items in de array plaatst, zal deze gewoon naar het einde van de lijst vallen, het zal het niet uit het menu verwijderen.
Je hebt een aantal menu's hernoemd en je hebt ze besteld zoals je wilt. Maar wat als u helemaal geen pagina's of de linkbeheerder gebruikt? Je kunt ze gewoon verwijderen.
Het verwijderen van beheerdersmenu's is heel eenvoudig. WordPress heeft een ingebouwde functie alleen voor het verwijderen van menu's:
remove_menu_page ();
Alle behoeften van remove_menu_page is de slug van het menu dat u verwijdert (ook aan het einde van deze tutorial).
Dus als u bijvoorbeeld het menu Extra wilt verwijderen, gebruikt u:
remove_menu_page (tools.php);
Wanneer u een menu verwijdert, kunt u dezelfde functie die u hebt gemaakt opnieuw gebruiken om menu's te hernoemen. Hier is een voorbeeld van de functie die je aan het begin van deze tutorial hebt gebruikt, waarbij je het Posts-menu hernoemde, maar nu ook het menu Tools verwijdert.
function edit_admin_menus () global $ menu; globaal $ submenu; $ menu [5] [0] = 'Recepten'; // Wijzig berichten in recepten $ submenu ['edit.php'] [5] [0] = 'Alle recepten'; $ submenu ['edit.php'] [10] [0] = 'Een recept toevoegen'; $ submenu ['edit.php'] [15] [0] = 'Maaltijden'; // Hernoem categorieën naar maaltijdtypen $ submenu ['edit.php'] [16] [0] = 'Ingrediënten'; // Hernoem tags naar ingrediënten remove_menu_page ('tools.php'); // Remove the Tools Menu add_action ('admin_menu', 'edit_admin_menus');
Het verwijderen van een submenu is net zo eenvoudig, het gebruikt een zeer vergelijkbare functie die het verwijderen van een hoofdmenu wel doet. Hier verbergt het de thema-editor in het menu Uiterlijk:
remove_submenu_page ( 'themes.php', 'thema-editor.php');
Het enige verschil in de argumenten is dat u de spatiebalk van het bovenliggende menu van het submenu en vervolgens de spatiebalk voor het submenu zelf moet opgeven. In een laatste voorbeeld, hier is de code die het volledige menu Tools en het submenu Thema-editor verbergt:
function edit_admin_menus () global $ menu; globaal $ submenu; $ menu [5] [0] = 'Recepten'; // Wijzig berichten in recepten $ submenu ['edit.php'] [5] [0] = 'Alle recepten'; $ submenu ['edit.php'] [10] [0] = 'Een recept toevoegen'; $ submenu ['edit.php'] [15] [0] = 'Maaltijden'; // Hernoem categorieën naar maaltijdtypen $ submenu ['edit.php'] [16] [0] = 'Ingrediënten'; // Hernoem tags naar ingrediënten remove_menu_page ('tools.php'); // Verwijder het menu Tools remove_submenu_page ('themes.php', 'theme-editor.php'); // Verwijder het submenu Thema-editor add_action ('admin_menu', 'edit_admin_menus');
Zoals je ziet, is het doen van wat basisaanpassingen aan de achterkant van WordPress leuk en gemakkelijk, en hoewel velen misschien niet zien wat je hebt gedaan, kan het uiteindelijk (en zal) je enorm helpen. Organisatie is nooit een slechte zaak. Je doet het aan de voorkant van je thema, waarom doe je het ook niet op de backend?
Dit is ook geweldig als u een site voor een klant beheert. Het verbergen van menu's die ze zouden kunnen gebruiken om potentiële onbedoelde schade toe te brengen aan hun site is altijd een groot pluspunt! In toekomstige zelfstudies zal ik meer van de aanpassingen bekijken die mogelijk zijn, van het gebruik van CSS om het algehele uiterlijk en gevoel van de backend te wijzigen, tot het hebben van aanpassingen die alleen van toepassing zijn op bepaalde gebruikers.
Zoals beloofd heb ik een kaart opgenomen met alle menu's en submenu's, de sleutel en de slak.