Globales Passwort für passwortgeschützte Artikel

  • Hallo,

    man kann die Sichtbarkeit eines Artikels mit einem Passwort schützen und für jeden Artikel ein anderes Passwort vergeben, damit User 1 nur auf Artikel A zugreifen kann und User 2 nur auf Artikel B, usw. - soweit so gut.

    Gibt es eine Möglichkeit das die Admins auf alle Seiten zugreifen können ohne für jeden einzelnen Artikel das jeweilige Passwort eingeben zu müssen?


    CU
    Michael

    Einmal editiert, zuletzt von McBlack (17. Februar 2009 um 22:52)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hallo,

    Administratoren sollten auf alle Seiten Zugriff haben, unabhänig der Passwort Einstellungen eines einzelnen Artikels.

    Ich habe die Version 2.7.1 und ein Avenue-Theme von hier Webfunk Avenue installiert. (wss.mc0.de)

    Da sind nun 3 Testbeiträge zu sehen, ein Artikel ist ungeschützt und die anderen sind passwortgeschützt und haben jeweils verschiedene Passworte. Ich habe die Artikel als Admin erstellt und bin eingeloggt, muß aber trotzdem für jeden geschützten Artikel ein Passwort eingeben.

    Wenn ich einen Artikel anschaue und das Passwort eingebe, so wird das Passwort in einem Cookie gespeichert. Beim nächsten Besuch ist der gleiche Artikel freigeschaltet (da der Cookie noch vorhanden ist), aber schaue ich mir den zweiten geschützten Artikel an, so kommt wieder die Meldung "Dieser Artikel ist durch ein Passwort geschützt. Um ihn anzusehen, trage es bitte hier ein:". Das Passwort im Cookie und das Passwort welches für den zweiten Artikel vergeben wurde stimmen nicht überein, ist klar...

    Aber müßte da nicht die Admin-Rolle greifen, wenn ich eingeloggt bin?

    Ich habe keine weiteren Plugins installiert, die irgendetwas durcheinander bringen könnten.

    CU
    Michael

  • Hallo,

    ja, das war das erste was ich ausprobiert habe, auch andere Browser (Safari, Firefox, Explorer) und anderes Betriebssystem (OS-X und Win-XP) ändert nichts am Problem.

    CU
    Michael

  • Okay, ich habs mir mal angeschaut. Es liegt auch nicht an der Theme sondern an der Funktion the_content resp. get_the_content. In dieser wird immer die Passwort Form reingeflanscht und diese prüft nur auf Passwort nicht auf User.

    Leider gibts für die Funktion post_password_required keinen Filter den man nutzen kann. Es gibt lediglich den Filter 'the_password_form' welcher gesubclassed werden könnte. Hierbei müsste man die global $post selber nochmal auf Passwort prüfen und falls es nötig ist, den content selber zusammenbauen. Aber auch hier wieder: Leider gibt es keine _eine_ Routine, die dies macht sondern nur den Mischmasch aus get_the_content. Im Grunde also einfach die gesamte Routine verdoppeln und den Teil rausschmeissen, der umgangen werden soll (hier der passwort check). Ist klar, nee?

    Ich habs mal zu Testzwecken und ob des vielen Codes als ein Plugin gebaut. Dabei kam mir die Idee, statt soviel Code zu übernehmen, lediglich dafür zu sorgen, dass der Post nicht mehr Passwort protected ist, falls man ihn aufruft als Admin. Die Template Function the_content ist nach aktivierung des Plugins in der Theme lediglich durch Superuser_Plugin::the_content zu ersetzen. Die Parameter bleiben die Gleichen. Kurz gesagt, einfach Superuser_Plugin:: davor setzen.

    Im Grunde kann die Klasse auch in die eigene Theme übernommen werden.

    Download: http://subfiles.net/wordpress/plug…eruser-v0.1.zip

  • Hallo,

    vielen lieben DANK!! :-D

    So war das aber nicht gemeint, ich dachte nur das ich zu dusselig bin, ich wollte dir keine Arbeit machen.

    Dein Plugin funktioniert wunderbar! :)


    CU
    Michael

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!