Support » Allgemeine Fragen » Scheduled Posts für Subscriber sichbar machen

Ansicht von 6 Antworten - 1 bis 6 (von insgesamt 6)
  • Thread-Starter simpleXX

    (@simplexx)

    Hat keiner Idee? :/

    Ich würde mich auch schon freuen wenn mir einer sagen wo ich ansetzen könnte. Wäre echt nett.

    Hallo,

    das ist eine interessante Frage. Auf die schnelle hab ich erst einmal keinen Filter gefunden über den man das Verhalten manipulieren kann.
    Das muss ich mir mal in Ruhe anschauen, kann aber etwas dauern – bin gerade im Vorbereitungsstress für die Maker Faire in Hannover am Wochenende.

    Gruß
    Frank

    Thread-Starter simpleXX

    (@simplexx)

    Hi Frank,
    wäre super nett wenn du einen Tipp hättest.
    Irgendwo muss es ja eine Abfrage geben a la -> nur der Admin darf Postings sehen, die den Status „future“ haben.

    Und dort müsste man nur einfügen -> auch member dürfen future posts sehen.

    Die Links zu den Artikel habe ich in der sidebar stehen (eigene Query), es geht wirklich nur um die anzeige der single-posts.

    Grüsse
    simpleXX

    Hallo,

    das liegt daran das die Rolle Subscriber die entsprechende Rechte nicht hat.

    Nach dem Laden des Posts, stellt er fest das es ein Entwurf ist.
    Einen Entwurf darf nur ein User lesen, der das Edit-Recht für den Post hat.

    Dafür ruft we die Funktion current_user_can() auf.

    query.php

    // User must have edit permissions on the draft to preview.
    if ( ! current_user_can($edit_cap, $this->posts[0]->ID) ) {

    current_user_can prüft ob der aktuelle User bestimmte Rechte hat.

    Da gibt es einen Hook ‚user_has_cap‘ an den Du dich hängen kannst.

    Als Beispiel ginge dann in deiner functions.php

    add_filter('user_has_cap','mf2');
    
    function mf2($a) {
    	$a['edit_others_pages'] = true;
    	$a['edit_pages'] = true;
    	return $a;
    }

    Das gaukelt vor das die Rechte ‚edit_others_pages‘ und ‚edit_pages‘ gesetzt sind. Das aber nur zur verdeutlichung, in einer echte Implementierung solltest du natürlich den User/Rolle prüfen und gegenprüfen für welches Post/Page diese Rechte geprüft werden. Du willst ja nicht das jeder, alles darf.

    Eventuell reicht es dir aber auch eines der User/Rollen Plugins zu installieren und deine Subscriberrolle zu ändern. Aber du musst natürlich sicherstellen das es sich dann nur auf den Preview beschränkt, die sollen die Texte ja sicherlich nicht bearbeiten können.

    Gruß
    Frank

    Thread-Starter simpleXX

    (@simplexx)

    Hallo Frank,
    erst einmal ein großes Danke für deine Recherche!

    Eventuell reicht es dir aber auch eines der User/Rollen Plugins zu installieren

    Leider gib es in keinem PlugIn die Funktion „Subscriber can read preview posts“

    Das gaukelt vor das die Rechte ‚edit_others_pages‘ und ‚edit_pages‘ gesetzt sind. Das aber nur zur verdeutlichung, in einer echte Implementierung solltest du natürlich den User/Rolle prüfen und gegenprüfen für welches Post/Page diese Rechte geprüft werden. Du willst ja nicht das jeder, alles darf.

    Wenn ich den code in die functions.php einbinde, dann kann jeder Subscriber Posts editieren. Nur so kann ein Subscriber auch future posts sehen, right? Einen anderen Weg gibt es nicht?
    Nur wie bzw. wo verbiete ich ihm das editieren?
    Ist diese Lösung nicht etwas gefählich?

    Grüsse
    simpleXX

    Thread-Starter simpleXX

    (@simplexx)

    Würde mich über eine Antwort sehr freuen 🙂

Ansicht von 6 Antworten - 1 bis 6 (von insgesamt 6)
  • Das Thema „Scheduled Posts für Subscriber sichbar machen“ ist für neue Antworten geschlossen.