Ausgabe in Abhängigkeit vom Userlevel
WordPress bietet ja verschiedene Userlevel, vom einfachen Abonnenten (Level 0) bis zum Boss-Administrator (Level 10). Im Template kann man diese Userlevel auch abfragen und Inhalte in Anhängigkeit davon darstellen.
In folgendem Codebeispiel wird der Text „Hallo Admin.“ nur für Benutzer mit dem Level 10 ausgegeben:
<?php if( current_user_can('level_10') ) : ?>
Hallo Admin.
<?php endif; ?>
Oder mit alternativer Ausgabe für „Nicht-Admins“:
<?php if( current_user_can('level_10') ) : ?>
Hallo Admin.
<?php } else { ?>
Hallo Nicht-Admin.
<?php endif; ?>
Tags: current_user_can, Templates, Userlevel
4 Kommentare zu
“Ausgabe in Abhängigkeit vom Userlevel”
Dein Kommentar:
Suche
Blog abonnieren
Letzte Artikel
- Lösung, wenn WordPress im Wartungsmodus hängen bleibt
- Admin Bar im Front-End deaktivieren
- Ausgabe in Abhängigkeit von vorhandenem Inhalt des Posts
- Link-Tipp: WordPress und SSL
- Login-URL vereinfachen
- Größe von eingebetteten Medien anpassen
- WordPress Linkmanager (Blogroll) wieder aktivieren
- Login-Versuche mit „Limit Login Attempts“ begrenzen
- Beiträge und Seiten duplizieren
- Tumblr-Beiträge importieren
- Laden von NextGEN Gallery Javascripten deaktivieren
Kommentare
- WordPress Linkmanager (Blogroll) wieder aktivieren bei
- Kommentar-Feed deaktivieren bei
- Ausgabe in Abhängigkeit von vorhandenem Inhalt des Posts bei
- Beiträge und Seiten duplizieren bei
- Größe von eingebetteten Medien anpassen bei
Kategorien
- Allgemein (53)
- Browserspezifisches (4)
- BuddyPress (22)
- Konfiguration (25)
- Off-Topic (9)
- Performance-Optimierung (9)
- Plugins (42)
- Sicherheit (5)
- Software (1)
- Templateprogrammierung (38)
- Twitter (4)
Hierzu ist anzumerken, dass die WordPress-Entwickler diese Userlevel nicht weiter aktiv unterstützen und von der Nutzung abraten.
Stattdessen sollten Berechtigungen genutzt werden. Das obige Beispiel wird dadurch (z.B.) zu:
<?php if( current_user_can(‚manage_options‘) ) : ?>
Hallo Admin.
<?php } else { ?>
Hallo Nicht-Admin.
<?php endif; ?>
Die Möglichkeit der user_level sollte nicht genutzt werden, sie ist seit 2.1 veraltet und ab 3.0 nicht mehr zulässig, läuft dann auf Error! Es sollten Objekte der Berechtigung verwendet werden:
if ( current_user_can('manage_options') )
Danke für den Tipp, Männer! Konnte ja nicht ahnen, dass ich so einen „Proteststurm“ lostrete.
Schönen Abend noch!
Tom
schade … ich find die lösung über level recht elegant: aber wenn meine vorredner recht haben dann isses eher blöd. ausprobieren werd ich das trotzdem…