Möglicherweise möchten Sie die Registrierung auf Ihrer WordPress-Website offen halten, damit beispielsweise Personen sich anmelden und Dinge kommentieren können, ohne jedes Mal ihren Namen/URL/E-Mail eingeben zu müssen. Aber diese Benutzer müssen wahrscheinlich nicht die gesamte obere Admin-Leiste sehen, da sie für sie wahrscheinlich kaum nützlich ist. Stellen Sie jedoch sicher, dass Sie einen Link zum Bearbeiten ihres Profils und zum Abmelden bereitstellen.
Dies wäre für Ihre functions.php-Datei oder ein Funktionalitäts-Plugin
add_action('set_current_user', 'cc_hide_admin_bar');
function cc_hide_admin_bar() {
if (!current_user_can('edit_posts')) {
show_admin_bar(false);
}
}
Hat bei mir nicht funktioniert. Es wird immer noch für alle Benutzer angezeigt. Liegt es ein Problem mit dem set_current_user Hook? Ich habe stattdessen eine der Optionen in diesem Artikel verwendet: http://digwp.com/2011/04/admin-bar-tricks/#disable-for-non-admins.
Kein Code nötig. Sehr einfaches und simples Plugin dafür. Es heißt User Frontend Plugin.
Hallo, ich wollte Ihnen nur mitteilen, dass Ihr Code in 3.5.1 einwandfrei funktioniert. Die Admin-Leiste wird für Administratoren angezeigt, aber nicht für normale Benutzer auf Abonnenten-Ebene.
Ich konnte es nicht zum Laufen bringen. `set_current_user` ist eine veraltete Funktion. Ich habe sie stattdessen an `wp_footer` gehängt, und das hat funktioniert. Allerdings fügt sie immer noch 28px Padding zum oberen Rand des `html`-Tags hinzu.
Dieses Codefragment verwendet nicht die Funktion `set_current_user`, die wie Sie sagen veraltet ist, sondern nutzt den Aktions-Hook `set_current_user`, der noch aktuell ist: https://developer.wordpress.org/reference/hooks/set_current_user/. Übrigens funktionierte das Snippet bei mir am 23.04.18 perfekt – danke!
Ich benutze das S2 Member Plugin, kann ich diesen Code in functions.php verwenden?
Ich habe es zum Laufen gebracht. Vielen Dank.
Endlich geschafft. Die Admin-WP-Leiste ist entfernt. Guter Artikel.
Geben Sie einfach in wp-content/themes/mytheme/functions.php Folgendes ein:
show_admin_bar(false);
Ersetzen Sie mytheme durch den Namen des Ordners Ihres Themes.
Hat perfekt funktioniert, eingefügt in mein Child-functions.php
Funktionierte auf dem Desktop, aber nicht auf einem iPad Air 2.
Danke, das hat funktioniert. :-)
Die obige Lösung hat für mich nicht funktioniert. Ich benutze WordPress Version 5.8.2
Stattdessen hat der folgende Code-Schnipsel funktioniert:
if(!current_user_can(‘edit_posts’)){
add_filter(‘show_admin_bar’,’__return_false’);
}
Ich hatte schon immer das Gefühl, dass die WP-Admin-Leiste zu viel Aufmerksamkeit erregt und war ein Fan davon, sie zu verstecken. Schließlich habe ich die CSS bearbeitet und diese Lösung gefunden:
https://romangr.com/blog/wp-admin-bar
Sie versteckt die Leiste nicht, macht sie aber fast unsichtbar und dennoch zugänglich.