Standardmäßig wird die Adminleiste (im Englischen Adminbar) für jeden Benutzer auf einer WordPress Website angezeigt. Die Adminleiste ist der schwarze Balken am oberen Rand der Website.

Adminleiste ausblenden 01

Die Adminleiste wird oben angezeigt.

Die Adminleiste dient unter anderem dazu, dass Nutzer Daten im WordPress Backend verändern können. In manchen Fällen will man aber nicht, dass der Nutzer überhaupt ins WordPress Backend kommt.

Daher zeige ich in diesem Beitrag, wie man die Adminleiste für alle Benutzerrollen ausser dem Administrator ausblendet.

Ab in den Code

Die folgenden Codezeilen platzierst du in der Datei functions.php:

Erklärung

In der if-Schleife fragen wir mittels der Funktion current_user_can() ab, ob der aktuelle Benutzer NICHT die Fähigkeit manage_options hat.

In Zeile 3 benutzen wir einen Filter und sagen WordPress, dass die Adminleiste nicht angezeigt werden soll.

Nun wird die Adminleiste nicht mehr angzeigt.

Adminleiste ist ausgeblendet.

Adminleiste ist ausgeblendet.

Gibt es eine Hintertür?

Natürlich, sonst würde ich nicht fragen. 🙂

Denn man braucht nur die URL der Webseite um “/wp-admin” erweitern. So kommt man direkt ins Backend. Natürlich nur als eingeloggter User.

Hintertür

Hintertür

Zugriff auf Backend durch Plugin verhindern

In dem Fall hilft uns das Plugin Remove Dashboard Access.

Nach der Installation kommst du via Einstellungen > Dashboard Access zu den Optionen des Plugins.

Optionen für "Remove Dashboard Access" Plugin

Optionen für “Remove Dashboard Access” Plugin

Die Standardeinstellung reicht für unser Beispiel aus. Ich will nämlich, dass nur Benuzter mit der Rolle Administrator Zugang zum Backend haben.

Eine weitere interessante Option ist “Advanced: Limit by capability:”. Dadurch kann man feingliedriger Zugänge zum Backend steuern. 

Resümee

Das ausblenden der Adminleiste/Adminbar in WordPress ist durch drei Zeilen Code leicht gelöst. Danach muss man noch auf die “Hintertür” aufpassen. Diese lässt sich aber durch ein Plugin schließen.