Dafür bieten sich Cron-Jobs an.
Zur Info: das hier ist ein Forum für WordPress-Anwender und nicht für Programmierer 😉
@bscu
Vielen Dank für die Antwort! Wo finde ich denn das Programmiererforum?
@bscu Sehr gut! Vielen Dank für die Hilfe! Das war das Stichwort, das ich gesucht habe.
Unter Linux kannst du mit so genannten Cron-Jobs festlegen, dass Skripte zu bestimmten Zeiten ausgeführt werden sollen. Je nach Umfang des Skripts kann das aber die CPU des Computers recht stark auslasten, weshalb viele Webhoster ihren Kunden in preiswerten Hosting-Tarifen nicht die Einrichtung von Cron-Jobs erlauben.
Damit WordPress selbst bei billigen Hosting-Tarifen zeitgesteuert Aufgaben wie z.B. die Veröffentlichung eines Beitrags zu einer bestimmten Zeit („am 1.Juli um 12:00 Uhr“) ausführen kann, verwendet WordPress eine andere Technik, die als „Pseudo-Cron“ bekannt ist: Sobald jemand die Webseiten abruft wird kurz nachgeschaut, ob in der Datenbank ein Eintrag vorhanden ist, dass zu dieser Zeit eine Aufgabe bereits hätte erledigt werden sollen. Die Aufgabe wird dann unmittelbar nachgeholt. Auf diese Weise sind die Webseitenbesucher also die Zeitgeber zur Ausführung von Skripten. Nachteil ist, dass die Skripte immer erst nachträglich ausgeführt werden – zumindest der erste Besucher sieht zu dann z.B. den zu dieser Zeit geplanten Beitrag noch nicht.
Das Thema ist in diesem Beitrag recht ausführlich behandelt worden: So erstellst und änderst du einen WordPress Cron-Job
Mit dem Code solltest du zumindest die regelmäßige Überprüfung hinbekommen. Der Abgleich des Datums, zu dem die Benutzerrechte verfallen sollen, ist nicht viel mehr als eine Datums-Operation in PHP. Zusätzlich brauchst du dann noch eine Abfrage mit der WordPress-Funktion user_can()
, ob der Benutzer noch eine bestimmte Benutzerrolle hat und falls ja, entziehst du die alte Rolle und weist eine neue Rolle zu. Das wird in diesem Beitrag erklärt: https://wordpress.stackexchange.com/a/4727
Das Plugin sollte so programmiert werden, dass die laufenden Abfragen ob ein Benutzer noch eine Bestimmte Rolle hat nach einem vorgegebenen Datum nicht mehr ausgeführt wird, um die Performance der Website nicht unnötig zu belasten.
Nachtrag: ¯\_(ツ)_/¯ … aber schön, dass ihr das so schnell geklärt habt, während ich noch geschrieben habe. 😛
@pixolin
aber schön, dass ihr das so schnell geklärt habt, während ich noch geschrieben habe.
Das kommt davon, wenn man immer Romane schreibt 😀 😀 😀
@bscu:
Dafür habe ich aber mal wieder was für mich über die Antwort von @pixolin mitgenommen 😉Danke @pixolin
Och jo, da nicht für, nich‘? 😉
Vielen Dank für eure Mühe.