De WordPress Admin aanpassen Aangepaste beheerdersmenu's

In de eerste twee delen van deze serie heb ik je laten zien hoe je het WordPress inlogscherm en het dashboard kunt aanpassen. In dit derde deel zal ik je laten zien hoe je de admin-menu's in WordPress kunt aanpassen.

In deze tutorial leer je hoe je:

  1. Hernoem een ​​menu-item (in dit geval 'Posts')
  2. Een menu-item verwijderen (in dit geval 'Opmerkingen')
  3. Sorteer uw menu opnieuw zodat de items die u vaker gebruikt hoger zijn

Ik ga een plug-in maken om dit te doen - als je al een plug-in hebt gemaakt na Deel 1 en 2 van deze serie te volgen, geef je er misschien de voorkeur aan om de code uit deze tutorial aan die plug-in toe te voegen, waardoor je één plug-in met alle uw beheerdersaanpassing.


Wat u nodig hebt om deze zelfstudie te voltooien

Om deze tutorial te voltooien, hebt u nodig:

  • Een WordPress-installatie
  • Toegang tot de plug-insmap van uw site om uw plug-in toe te voegen
  • Een teksteditor om uw plug-in te maken

De plug-in instellen

Aan het begin van mijn plug-in voeg ik de volgende regels toe:

 / * Naam van de invoegtoepassing: WPTutsPlus De beheerder aanpassen Deel 3 - admin-menu's URI-plug-in: http://rachelmccollin.co.uk Beschrijving: deze plug-in ondersteunt de zelfstudie in wptutsplus. Het past het WordPress-dashboard aan. Versie: 1.0 Auteur: Rachel McCollin Auteur URI: http://rachelmccollin.com Licentie: GPLv2 * /

1. Een menu-item hernoemen

De meeste sites die ik in WordPress bouw, zijn geen blogs - het zijn over het algemeen klantensites die, als ze posts gebruiken, ze gebruiken voor nieuws in plaats van blogposts. Dus ik ga 'Posts' in het admin-menu hernoemen naar 'Nieuws'. U kunt elk WordPress-inhoudstype hernoemen naar wat u maar wilt, bijvoorbeeld:

  • berichten kunnen nieuws, artikelen of updates worden
  • media kunnen afbeeldingen, bijlagen of uploads worden

Om de naam van berichten te wijzigen, voegt u de volgende code toe aan uw plug-in:

 // Hernoem Posts naar Nieuws in Menu-functie wptutsplus_change_post_menu_label () global $ menu; globaal $ submenu; $ menu [5] [0] = 'Nieuws'; $ submenu ['edit.php'] [5] [0] = 'Nieuwsitems'; $ submenu ['edit.php'] [10] [0] = 'Voeg nieuwsitem toe';  add_action ('admin_menu', 'wptutsplus_change_post_menu_label');

Deze code verwijst naar de $ menu en submenu $ globale variabelen - de getallen tussen vierkante haakjes vertellen WordPress naar welke menu-items ik verwijs, omdat elk menu-item zijn eigen nummer heeft dat overeenkomt met zijn volgorde in het menu. Ik koppel mijn functie om berichten te hernoemen naar de ADMIN_MENU hook, dat is de actiehaak die ik tijdens deze tutorial zal gebruiken.

Dit verandert het admin-menu zoals getoond in de screenshot:

Opmerking: het Dashboard in de schermafbeelding is aangepast, dus het ziet er niet uit als het standaarddashboard. Zie deel 2 van deze serie voor meer details.

Zoals je ziet, staat het menu 'Posts' normaal gesproken in 'Nieuws'. Dit geeft je toegang tot berichten op dezelfde manier als voorheen maar met een ander label. Het berichttype is niet gewijzigd.

De volgende stap is het hernoemen van de submenu-items voor berichten en elk ander gebruik van de term 'bericht' in de beheerdersschermen.

Voeg in uw plug-in het volgende toe:

 // Bewerk submenu-functie wptutsplus_change_post_object_label () global $ wp_post_types; $ labels = & $ wp_post_types ['post'] -> labels; $ labels-> name = 'Nieuws'; $ labels-> singular_name = 'Nieuwsitem'; $ labels-> add_new = 'Voeg nieuwsitem toe'; $ labels-> add_new_item = 'Voeg nieuwsitem toe'; $ labels-> edit_item = 'Wijzig nieuwsitem'; $ labels-> new_item = 'Nieuwsitem'; $ labels-> view_item = 'Bekijk nieuwsitem'; $ labels-> search_items = 'Zoek nieuwsitems'; $ labels-> not_found = 'Geen gevonden nieuwsitems'; $ labels-> not_found_in_trash = 'Geen nieuwsitems gevonden in de prullenbak';  add_action ('admin_menu', 'wptutsplus_change_post_object_label');

Nu is niet alleen alleen het menu-item op het hoogste niveau veranderd, maar alle verwijzingen naar berichten, zoals te zien in de screenshot:

Het submenu heeft nieuwe labels, evenals de link 'Nieuw bericht toevoegen' en de titel van het bewerkingsscherm.


2. Menu-items verwijderen

Het beheerdersmenu komt dichter bij de structuur van mijn client-sites, nu berichten worden aangeduid als nieuwsitems. Maar ik kan de dingen verder vereenvoudigen door menu-items te verwijderen die ik niet nodig heb.

In de meeste client-sites die ik heb gemaakt, zijn reacties uitgeschakeld. Dus ik kan ze uit het admin-menu verwijderen om verwarring bij clients te voorkomen.

Voeg in uw plug-in het volgende toe:

 // Remove Comments-menu-item voor alle behalve beheerdersfunctie wptutsplus_remove_comments_menu_item () $ user = wp_get_current_user (); if (! $ user-> has_cap ('manage_options')) remove_menu_page ('edit-comments.php');  add_action ('admin_menu', 'wptutsplus_remove_comments_menu_item');

Dit gebruikt de remove_menu_page haak met de slak voor de bewerkingspagina voor reacties, dat is bewerk-comments.php.

Opmerking: ik heb de functie ingesloten in een vinkje voor de manage_options mogelijkheid om het menu-item Opmerkingen niet te verbergen voor beheerders, voor het geval dat!

Zoals u kunt zien in de schermafbeelding, is het menu-item Opmerkingen nu verwijderd.


3. Menu-items opnieuw rangschikken

De laatste aanpassing die ik ga maken is om het admin-menu opnieuw te ordenen, zodat items die mijn klanten vaker zullen gebruiken, hoger zijn. In dit geval ga ik het menu-item Pagina's verplaatsen boven media.

U doet dit met behulp van twee filters:

  • custom_menu_order, die de menu_order filteren en moeten hebben __return_true als zijn waarde.
  • menu_order, waaraan u uw functie koppelt die de nieuwe menuvolgorde definieert.

Voeg in uw plug-in het volgende toe:

 // Verplaats pagina's boven Media functie 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');

Hiermee wordt het menu opnieuw gesorteerd in de volgorde die is opgegeven in de array, zodat Media wordt weergegeven na Pages. U hebt nu een eenvoudig aangepast beheerdersmenu.


Samenvatting

Het aanpassen van het WordPress admin-menu kan het proces van het beheren van een site gemakkelijker en sneller maken voor uzelf en uw klanten, door menu-items meer geschikte labels te geven, ongewenste items te verwijderen en ervoor te zorgen dat het menu in de handigste volgorde staat. U kunt dit verder brengen door aangepaste berichttypen op en neer te verplaatsen in uw menu, misschien de naam van media te wijzigen en meer.