Support » Allgemeine Fragen » Rechte Autor

  • Hallo in die Runde,

    ich möchte einem „Autor“ die Möglichkeit geben, bereits bestehende Seiten und Beiträge zu bearbeiten, aber die Änderungen nicht sofort zu veröffentlichen. Sozusagen soll es von Seiten des Admins nochmal überprüft werden können.

    Jetzt habe ich bereits das Plugin „User Role Editor“ heruntergeladen, bei neu erstellten Beiträgen und Seiten funktioniert das auch, bei „alten“ Sachen kann der Autor aber direkt ohne Überprüfung veröffentlichen.

    Habe alles durchprobiert, komme aber zu keiner Lösung. Weiß jemand, was ich tun kann?

    Danke schon mal 🙂

Ansicht von 3 Antworten - 1 bis 3 (von insgesamt 3)
  • Hallo @einsteiger123

    Wenn es nur um eine Rolle geht, dann brauchst du das Plugin „User Role Editor“ nicht. Du kannst auch die functions.php deines Child-Themes nutzen.

    Falls du kein Child-Theme haben solltest, es ist ganz einfach eins anzulegen und immer zu empfehlen, Tutorials dafür gibt es en masse, es existieren sogar Plugins, mit denen man Child-Themes anlegen kann.

    Trag das in die functions.php ein:

    add_role(
    	'entwurfsautor',
    	__( 'Entwurfsautor' ),
    	array(
    		'read'         => true,  // true allows this capability
    		'edit_posts'   => true,
    		'delete_posts' => true,
    		'upload_files' => true,
    		'edit_published_posts' => true,
    		'delete_published_posts' => true,
    		'manage_categories' => true,
    	)
    );

    Damit wird die neue Rolle „Entwurfsautor“ angelegt, die kann

    • neue Beiträge erstellen
    • eigene Beiträge löschen
    • Dateien hochladen
    • Kategorien anlegen/auswählen
    • eigene noch nicht veröffentlichte Beiträge bearbeiten
    • eigene veröffentlichte Beiträge bearbeiten
    • keine Beiträge veröffentlichen
    • keine bereits veröffentlichten (und anschl. bearbeiteten Beiträge) erneut veröffentlichen
    • hat keinen Zugriff auf Beiträge anderer Rollen

    Wenn du andere Rechte benötigst, zum Beispiel auch für Seiten, statt nur für Beiträge, passe es entsprechend an. Im Codex findest du alles, was du dafür benötigst:
    https://codex.wordpress.org/Roles_and_Capabilities

    Berechtigungen, die die Rolle nicht haben soll, lässt du einfach weg (that’s all).

    Aber sei vorsichtig bei der Rechtevergabe! Die sind im Codex schön nach Rollen aufgelistet, vergib z. B. keine Adminrechte, oder „ungefiltertes HTML“ und teste die Rolle bis ins Detail, bevor du diese Rolle einem anderen Usern zuordnest.

    Das ganze wird (vermutlich) aber nicht funktionieren, wenn gleichzeitig auch das Plugin „User Role Editor“ aktiviert ist, also deaktiviere und lösche es.

    Solltest du den Code bearbeiten und nach dem Upload eine weiße Seite erhalten, keine Panik, einfach den Code wieder ändern, oder löschen, oder wie oben neu einfügen.

    Die Rolle wird in die Datenbank geschrieben, solltest du sie wieder aus WordPress entfernen wollen, lösche obigen Code aus der functions.php und setze stattdessen das in die functions.php:

    //check if role exists before removing it
    if( get_role('entwurfsautor') ){
          remove_role( 'entwurfsautor' );
    }

    Problem gelöst?

    Thread-Starter einsteiger123

    (@einsteiger123)

    Super, vielen Dank für die ausführliche Antwort, werde es morgen gleich mal probieren. 🙂

    Habe es gerade erst gelesen, wohl vergessen, die Benachrichtigung zu aktivieren…

Ansicht von 3 Antworten - 1 bis 3 (von insgesamt 3)
  • Das Thema „Rechte Autor“ ist für neue Antworten geschlossen.