kulturbanause Blog

Responsive Design, WordPress, Konzeption, HTML, CSS, JS & UX/UI …

Navigationspunkte im WordPress-Backend / in der Werkzeugleiste ausblenden und umbenennen

Wenn ihr WordPress für Kundenprojekte einsetzt, ist das Backend häufig umfangreicher als es für die Bedürfnisse des Kunden notwendig ist. Damit im Dashboard nur die Navigationspunkte auftauchen die der Kunde auch wirklich benötigt bietet es sich an ein paar Anpassungen vorzunehmen. In diesem Beitrag möchte ich euch verschiedene Snippets, Links und Plugins vorstellen mit denen ihr das Dashboard individualisieren könnt.

Workshops und Seminare von kulturbanause

Visual Prototyping, Responsive Design, CSS Grid & Flexbox, Sketch, Adobe XD …

Jetzt Frühbucher-Rabatte sichern!

Verschiedene Lösungsansätze

Bevor ihr Änderungen am WordPress-Theme vornehmt oder ein Plugin verwendet solltet ihr prüfen ob die Standard-Benutzerverwaltung von WordPress nicht bereits zum Ziel führt. Wenn für den Kunden beispielsweise nur die administrativen Menüeinträge versteckt werden sollen, bietet es sich an eine schwächere Benutzerrolle (z.B. den Redakteur) zu verwenden.

WordPress-Plugin: Admin Menu Editor

Eine weitere Möglichkeit das Backend abzuspecken ist der Einsatz eines Plugins wie Admin Menu Editor oder WPlite. Mit diesem Plugin können unerwünschte Menüpunkte und Boxen ausgeblendet werden. Inwiefern sich hier ein Plugin anbietet ist wohl abhängig von der Art der Anpassung die ihr vornehmen wollt.

Zuletzt besteht noch die Möglichkeit die Anpassungen selbst über die functions.php des Themes vorzunehmen. Für diesen Weg möchte ich euch zwei Snippets vorstellen.

Navigationspunkte entfernen

Wenn ihr Navigationspunkte ausblenden möchtet, kopiert das folgende Snippet in die functions.php eures Themes oder verwendet noch besser ein seitenspezifisches Plugin. Alle Menüeinträge innerhalb des Arrays werden entfernt.


/* Navigationspunkte aus dem WordPress-Dashboard entfernen */ 
function remove_menus () {
global $menu;
		$restricted = array(__('Beiträge'), __('Medien'), __('Links'), __('Seiten'), __('Kommentare'), __('Design'), __('Plugins'), __('Benutzer'), __('Werkzeuge'), __('Einstellungen'));
		end ($menu);
		while (prev($menu)){
			$value = explode(' ',$menu[key($menu)][0]);
			if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
		}
}
add_action('admin_menu', 'remove_menus');

Dashboard Menüpunkte umbenennen

Wenn Ihr Menüpunkte umbenennen möchtet könnt ihr dafür folgendes Snippet verwenden und einzelne Wörter per str_replace ersetzen. Die Ersetzung findet dann allerdings immer global im gesamten Menü statt, auch in den Untermenüs.

Kopiert folgenden Code in die functions.php des Themes. Anschließend legt ihr immer fest welche Zeichenkette mit welchem Wort ersetzt werden soll. Im nachfolgenden Beispiel ersetzen wir „Artikel“ mit „Blog-Beiträge“.


/* Gezielte Wörter im WordPress-Dashboard-Menü umbenennen */ 
function kb_rename_dashboard_menu( $kb_rename_item ) 
{  
    $kb_rename_item = str_replace( 'Artikel', 'Blog-Beiträge', $kb_rename_item );
    $kb_rename_item = str_replace( 'artikel', 'blog-beiträge', $kb_rename_item );
    return $kb_rename_item;
}

add_filter( 'gettext', 'kb_rename_dashboard_menu' );
add_filter( 'ngettext', 'kb_rename_dashboard_menu' ); 

Menüpunkte aus der Werkzeugleiste entfernen

Auch in der Werkzeugleiste können die Menüpunkte ausgeblendet werden. Verwendet dazu folgendes Snippet in der functions.php bzw. einem seitenspezifischen Plugin:



add_action( 'admin_bar_menu', 'remove_wp_nodes', 999 );

function remove_wp_nodes()
{
    global $wp_admin_bar;  
    $wp_admin_bar->remove_node( 'wp-logo' ); // Entfernt das WordPress-Logo
    $wp_admin_bar->remove_node( 'site-name' ); // Entfernt den Namen der Seite
    $wp_admin_bar->remove_node( 'comments' ); // Entferne den Abschnitt "Kommentare"
    $wp_admin_bar->remove_node( 'new-content' ); // Entfernt den Abschnitt "Neu"

    // Es ist auch möglich die Unterpunkte des Abschnitts "Neu" einzeln zu entfernen 
    $wp_admin_bar->remove_node( 'new-post' ); // Entfernt den Menüpunkt "Neuer Beitrag"
    $wp_admin_bar->remove_node( 'new-link' ); // Entfernt den Menüpunkt "Neuer Link"
    $wp_admin_bar->remove_node( 'new-media' ); // Entfernt den Menüpunkt "Neue Datei"
    $wp_admin_bar->remove_node( 'new-page' ); // Entfernt den Menüpunkt "Neue Seite"
}

Zum Thema

Wenn ihr gezielt einen einzelnen Menüpunkt umbenennen möchtet, oder die Anordnung der Navigationspunkte umstellen wollt, könnt ihr direkt auf den Array des Dashboard-Menüs zugreifen. Ein ausführlicher Beitrag auf WPTuts gibt einen Einblick in die Materie.

Jetzt bist du gefragt!

Hast du Anregungen, Ergänzungen, einen Fehler gefunden oder ist dieser Beitrag nicht mehr aktuell? Dann freuen wir uns auf deinen Kommentar.

Du kannst diesen Beitrag natürlich auch weiterempfehlen. Wir sind dir für jede Unterstützung dankbar!

Unterstützung bei WordPress-Projekten

Unsere WordPress Agentur ist auf die Entwicklung maßgeschneiderter WordPress-Themes und -Websites spezialisiert. Wenn du Unterstützung bei der Planung, Gestaltung und Entwicklung eines Projekts benötigst, helfen wir gerne weiter.
WordPress-Leistungsangebot →

Das könnte dich auch interessieren

6 Kommentare

  1. Christian Wolff

    Verfasst am 10. April 2012 um 23:23 Uhr.

    Ich habe versucht Navigationspunkte auszublenden mit dem Code in der functions.php. Es klappt auch alles Super, nur ist jetzt auch für den Admin alles nicht mehr ersichtlich. Wie kann man das ganze umsetzen, sodass nur Autoren die Menüpunkte nicht sehen?

    Besten Dank
    Christian

  2. Matze

    Verfasst am 24. Oktober 2012 um 12:43 Uhr.

    Schönes Tut, vielen Dank.
    Nur wie kann ich Menüpunkte, die durch ein Plugin hinzugefügt wurden (z.B. WP DBManager), entfernen? Ich kann leider die ID etc. nicht herausfinden.
    Vorab schon mal vielen Dank.

    Matze

    • Sebastian

      Verfasst am 24. November 2014 um 20:06 Uhr.

      Das würde mich auch mal interessieren.

  3. andrej

    Verfasst am 26. Oktober 2012 um 15:09 Uhr.

    vielen dank! sehr hilfreich. die plugins werd ich mir dazu auch anschauen.

  4. sissi

    Verfasst am 14. Juli 2016 um 15:53 Uhr.

    danke für den code, sehr hilfreich :)

  5. Vazquez

    Verfasst am 13. Januar 2017 um 13:08 Uhr.

    Guten Tag zusammen
    Vielleicht kann mir jemand Helfen. Versuche mal das Problem zu umschreiben.
    Ich habe gestern ein wpml Plugin für Mehrsprachigkeit installiert. Irgendwie sind nun die Seiten im Frontend nicht mehr ersichtlich. Die Menu Funktionalität ist ebenfalls verschwunden. Sämtliche Seiten sind jedoch im Dashbord unter Seiten ersichtlich.Kann mir jemand einen Tipp geben.
    Vielen Dank
    Vazquez

Kommentar verfassen

Dieser Blog lebt vom Feedback der Besucher! Also los, mach mit!
Bitte habe Verständnis dafür, dass Kommentare die mit dem Inhalt dieses Beitrags nichts zu tun haben, gelöscht werden.