• Hallo zusammen!
    Ich verzweifle gerade mit den Benutzerrollen 🙁
    Ich möchte einen Benutzer erstellen, der seine eigenen Seiten administrieren und Medien hochladen darf. Da „Autor“ keine fremden Inhalte sieht, wollte ich die Seiten per Quickedit dem User zuordnen – er fehlt aber in der Liste.
    Plugins zu dem Thema habe ich nur kostenpflichtige gefunden außer „Members“, da hat die Content EinschrĂ€nkung aber auch nicht funktioniert.

    Die Seite, fĂŒr die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 4 Antworten – 1 bis 4 (von insgesamt 4)
  • Hi, bei dem Quickedit Dropdown werden nur User angezeigt die eine spezielle Berechtigung haben, ich glaube es ist edit_posts.

    Hier ist ein Code-Snippet um den Berechtigungscheck zu entfernen, dann kann man ĂŒber Quickedit jeden beliebigen User setzen:

    /**
    * Modify the arguments for the Quick Edit authors dropdown to include all users regardless of roles or capabilities.
    *
    * @param array $args The arguments passed to the dropdown_users function.
    * @return array Modified arguments to include all users.
    */
    function quick_edit_include_all_users($args) {
    // Remove capability restrictions to include all users.
    if (isset($args['capability'])) {
    unset($args['capability']);
    }

    // Ensure all users are included.
    $args['number'] = -1;

    return $args;
    }

    add_filter('quick_edit_dropdown_authors_args', 'quick_edit_include_all_users');
    Moderator Angelika Reisiger

    (@la-geek)

    @orpheus77

    Benutzerrollen:
    —————————————————–
    Die Rolle Autor (engl. author)

    kann

    eigene BeitrÀge
    erstellen
    bearbeiten
    veröffentlichen
    löschen
    zu Kategorien zuweisen
    Stichwörter hinzufĂŒgen

    Mediendateien
    hochladen

    kann nicht
    BeitrÀge anderer bearbeiten
    Kategorien erstellen
    Seiten (weder eigene noch von anderen) bearbeiten/veröffentlichen/löschen/erstellen
    administrative Funktionen ausfĂŒhren
    —————————————————-

    Die Rolle Mitarbeiter/Mitwirkender (engl. contributor)

    kann

    eigene BeitrÀge
    erstellen
    als Entwurf speichern
    Entwurf löschen

    und hat ansonsten keine Befugnisse.
    —————————————————————–

    ZurĂŒck zum Autor und den Standard-Funktionen von WordPress

    1. Die Rolle Autor wird immer in der Auflistung „alle BeitrĂ€ge“ unter Quicklinks aufgelistet. Voraussetzung dafĂŒr ist allerdings, dass mindestens ein User mit der Rolle Autor existiert.
    2. Die Rolle Autor wird nie in der Auflistung „alle Seiten“ unter Quicklinks aufgelistet, denn ein Autor kann keine Seiten bearbeiten/erstellen usw.

    Der Code von @benniledl erzwingt zwar die Auflistung der Rolle Autor in den Quicklinks unter „alle Seiten“, vergibt aber keine Zugriffsrechte auf Seiten, das heißt: Seiten werden der Rolle Autor nicht im Backend angezeigt, im Frontend kann die Rolle Autor auf der (per Quicklink) zugewiesenen Seite nicht auf „Bearbeiten“ zugreifen, ein fĂŒr Admins/Redakteure funktionierender Direktlink zum Bearbeiten funktioniert in der Rolle Autor auch nicht.

    So, nun zu einer (von mehreren) Lösung des Problems.

    Installiere das Plugin User Role Editor, nach dessen Aktivierung findest du in der linken Seitenleiste unter Benutzer den neuen MenĂŒlink „User Role Editor“, klick darauf.

    In dem nun geöffneten Fenster „User Role Editor“ klicke rechts (NavigationsmenĂŒ ganz rechts) auf „Add Role“. Im Pop-up-Fenster trage ein/wĂ€hle aus unter
    Role name (ID): newauthor
    Display Role Name: Neuer Autor
    Make copy of: Autor (author)
    klicke nun rechts auf den MenĂŒpunkt „Add Role“

    Hinweis: SelbstverstÀndlich kannst du die Rolle (Display Role Name) sowie dessen ID (Role name (ID)) ganz nach Belieben benennen und auch die Berechtigungen (s. nachfolgend) vergeben, wie du es magst.

    Falls noch nicht automatisch passiert, wĂ€hle oben im Drop-down-MenĂŒ aus: Neuer Autor (newauthor) und klicke dann rechts auf den MenĂŒpunkt „Add Capability“, trage nun im Pop-up-Fenster in das Feld „Capability name (ID):“ ein -> newauthor und klick rechts auf den MenĂŒpunkt „Add Capability“.

    Jetzt wÀhle die zusÀtzlichen Berechtigungen mithilfe der Checkboxes aus:

    • create_posts
    • delete_pages
    • delete_published_pages
    • edit_pages
    • edit_published_pages
    • publish_pages

    klick nun rechts auf den MenĂŒpunkt „Update“ und bestĂ€tige im Pop-up-Fenster mit „Yes“.

    Geh nun in der linken Seitenleiste auf „Alle Benutzer“, wĂ€hle den kĂŒnftigen Autor aus und gib ihm die Rolle „Neuer Autor“ und das Speichern nicht vergessen.

    Nun kannst du unter den Quicklinks die Rolle „Neuer Autor“ fĂŒr BeitrĂ€ge UND Seiten auswĂ€hlen.

    Übrigens: Die selbst angelegten Rollen sowie evtl. geĂ€nderte Berechtigungen in den Standardrollen kannst du in der linken Seitenleiste unter

    Einstellungen -> User Role Editor -> Tab "Tools" -> dort "Permanently delete all custom user roles and capabilities" in das Eingabefeld einfĂŒgen -> auf den Button "Reset" klicken

    bei Bedarf wieder alle löschen.

    Hier noch ein Screenshot (mit Klick darauf vergrĂ¶ĂŸern) wie ich die Berechtigungen fĂŒr die Rolle „Neuer Autor“ gesetzt habe:

    Thread-Starter orpheus77

    (@orpheus77)

    Vielen Dank erstmal – hat gut geklappt!
    Wenn ein User mit der neuen Rolle eine Seite bearbeitet erscheint beim Speichern die Fehlermeldung:
    „Custom HTML is disabled for your user role. Please contact your site Administrator to change your capabilities.“
    Das Recht finde ich aber in der Liste nicht.

    @orpheus77

    Es funktioniert einwandfrei – mit einer Standard-WordPress-Installation. Ich hatte den Punkt create_posts nicht explizit aufgelistet und es gerade in meinem Beitrag oben entsprechend nachgetragen.

    Die Listenpunkte mĂŒssen zusĂ€tzlich zu den von der Rolle Autor kopierten Berechtigungen hinzugefĂŒgt werden.

    Erlaube/aktiviere auf keinen Fall die Befugnis unfiltered_html, es sei denn, du weißt, was du tust und möchtest der Rolle diese Berechtigung geben. Die Berechtigung unfiltered_html ist eine Sicherheitsfunktion in WordPress, die Benutzer daran hindert, in WordPress-Posts zum Beispiel Iframes und Codeausschnitte oder erweiterten Code zu verwenden.

    Wenn es immer noch nicht funktioniert, kann es nur an installierten Plugins, Cache, .htaccess-Datei oder dem Theme liegen.

Ansicht von 4 Antworten – 1 bis 4 (von insgesamt 4)