Zur Suche springen Zur Navigation springen Zum Hauptinhalt springen Zum Footer springen

In WordPress haben Benutzer mit dem Status »Mitarbeiter« normalerweise keine Möglichkeit Bilder in die Mediathek hochzuladen. Insbesondere wenn ihr in eurem Blog Gastautoren beschäftigt bietet sich jedoch die Benutzerrolle Mitarbeiter ideal an, da Autoren mit dieser Rolle keine Beiträge veröffentlichen können. Der einzige Nachteil an dieser Benutzerrolle, ist der bereits erwähnte, fehlende Datei-Upload. Mit einer kleinen Anpassung kann diese Funktion nachgerüstet werden.

Schulungen von kulturbanause

Intensive Trainings mit hohem Praxisbezug.

Benutzerrechte in WordPress anpassen

In WordPress existieren unterschiedliche Benutzerrollen mit mehr oder weniger eingeschränkten Rechten. Sollte keine dieser Benutzerrollen für den gewünschten Anwendungszweck passen, gibt es drei Möglichkeiten um die gewünschten Rechte zu vergeben.

Eine Möglichkeit ist es, mit add_role eine neue Benutzerrolle hinzuzufügen und mit den gewünschten Rechten zu versehen. Des weiteren können bestehende Benutzerrollen mit Hilfe von add_cap um Berechtigungen ergänzt werden. Mit remove_cap könnt ihr einer bestehenden Benutzerrolle Rechte entnehmen.

In diesem Beitrag nehmen wir uns die Benutzerrolle »Mitarbeiter« (Contributor) vor, und ergänzen sie mit Hilfe von add_cap um den Dateiupload.

Snippet einbinden

Mit folgendem Snippet, welches ihr in die functions.php schreiben, oder in ein seitenspezifisches Plugin auslagern könnt, gebt ihr der Benutzerrolle »Mitarbeiter« (Contributor) das Recht, Bilder und Medien in die Mediathek von WordPress hochzuladen:



// Benutzerrolle Contributor (Mitarbeiter) mit Bild-Upload-Rechten versorgen.
if ( current_user_can('contributor') && !current_user_can('upload_files') )
add_action('admin_init', 'kb_allow_contributor_uploads');

function kb_allow_contributor_uploads() {
     $contributor = get_role('contributor');
     $contributor->add_cap('upload_files');
}

Dieses Script muss nur einmal ausgeführt werden um die Benutzerrolle dauerhaft zu verändern. Wenn einem Benutzer eine Berechtigung wieder entzogen werden soll, muss mit remove_cap gearbeitet werden.

Snippet entfernen

Das Snippet sollte nach erfolgreicher Ausführung wieder aus dem Code entnommen werden, da es sonst bei jedem Ladevorgang der Seite erneut die Berechtigungen setzt bzw. prüft, obwohl sie bereits korrekt gesetzt sind.

Links / Quellen

Geschrieben von kulturbanause Team

thumb

Beiträge bei denen das kulturbanause-Team als Autor angegeben ist, wurden von mehreren Personen in Zusammenarbeit geschrieben. Wir nutzen diesen Blog als öffentliches Archiv und um Web Designern bei ihren alltäglichen Problemen zu helfen. Neben diesem Blog bieten wir noch weitere Trainings-Möglichkeiten wie Schulungen, Bücher oder Video-Trainings an. Detaillierte Informationen findet ihr hier.

Feedback & Ergänzungen – 2 Kommentare

  1. André
    schrieb am 06.01.2016 um 23:16 Uhr:

    Vielen Dank genau das habe ich gesucht :)

    Antworten
  2. Netta
    schrieb am 28.08.2015 um 16:37 Uhr:

    Ein super Beitrag, der mir, weil ich recht viel mit WordPress arbeite, sehr zu Gute kommt. Überhaupt bin ich sehr froh, dieses Blog entdeckt zu haben, denn ich lerne eine ganze Menge über Webdesign :)

    Antworten

Kommentar zu dieser Seite

Wir freuen uns über Anregungen, Ergänzungen oder Hinweise zu Fehlern. Wir lesen jeden Eintrag, veröffentlichen aber nur, was den Inhalt sinnvoll ergänzt.

WordPress-Projekte mit kulturbanause

Wir wissen wovon wir reden. Wir setzen WordPress seit über 10 Jahren erfolgreich ein und realisieren maßgeschneiderte Websites auf Basis dieses großartigen CMS.

WordPress-Leistungsangebot →

Schulungen von kulturbanause

Wir bieten Seminare und Workshops zu den Themen Konzept, Design und Development. Immer up-to-date, praxisnah, kurzweilig und mit dem notwendigen Blick über den Tellerrand.

Übersicht Schulungsthemen →

Unsere Agentur in Berlin realisiert vom durchgestylten One-Pager bis zur funktionalen Konzern-Website Projekte mit sehr unterschiedlichem Umfang. Wir haben u.a. mit folgenden Kunden erfolgreich zusammengearbeitet: