Auf Webservern mit dem Betriebsystem Linux werden regelmäßig (stündlich, täglich, wöchtenlich, monatlich oder zu vorgegebenen Zeiten) Skripte ausgeführt, die z.B. veraltete Log-Dateien löschen, Updates ausführen, usw. Da das Ausführen von Skripten Ressourcen des Computers belegt, sind Webhoster etwas geizig, wenn Anwender ebenfalls zeitgesteuert Skripte ausführen möchten. Wenn hunderte Nutzer alle paar Minuten irgendwelche Skripte ausführen, bekommt der Webserver nicht mehr genug Rechenleistung, um Webseiten auszuliefern. Die Folge wäre eine katastrophale Performance der gehosteten Webseiten.
WordPress ist so entwickelt worden, dass es auf möglichst vielen Webhosting-Angeboten läuft. Um z.B. regelmäßig prüfen zu können, ob Aktualisierungen von Plugins, Themes oder WordPress-Core anstehen, würde WordPress auch gerne auf Cron-Jobs zurückgreifen (was auch möglich ist, eine Anleitung gibt es hier). Wenn der Webhoster allerdings gar keine Cron-Jobs zur Verfügung steht, muss es einen anderen Weg geben. Die WordPress-Entwickler haben sich für ein „Pseudo-Cron“ entschieden: Immer wenn ein Webseitenbesucher eine Seite aufruft, vergleicht WordPress eine Tabelle mit Aufgaben mit der aktuellen Uhrzeit und führt nachträglich alle Aufgaben durch, die um dieser Uhrzeit bereits ausgeführt sein sollten. Problematisch ist das eigentlich nur bei geplanten Veröffentlichungen von Seiten und Beiträgen. Soll ein Beitrag um Mitternacht erscheinen, aber der erste Besucher taucht erst nachmittags auf, ist der Beitrag immer noch nicht veröffentlicht, weil erst bei dem Besuch festgestellt wird, dass die Veröffentlichung bereits überfällig ist. Und genau auf diesem Umstand wirst du mit der Fehlermeldung hingewiesen: eigenlich hätte das Ereignis action_scheduler_run_queue
längst ausgeführt werden sollen, aber tatsächlich hat erst so spät jemand wieder eine Webseite aufgerufen, dass der „Job“ zu spät ausgeführt wird.
Ich zucke bei dieser Fehlermeldung immer mit den Schultern und denke „isso“, aber wenn dich das nervös macht, kannst du vielleicht doch einen Cron-Job einrichten, der regelmäßig https://example.com/wp-cron.php?doing_wp_cron
aufruft und so die Ausführung von Skripten triggert. Der genannten Beitrag von Kinsta liefert eine gute Anleitung.
Danke für deine ausführliche Erklärung, ich gucke mal, was ich da machen kann 🙂
Markierst du den Thread dann noch als „gelöst“?
Ich wollte das erst ausprobieren mit dem Cronjob
Ich hatte dieselbe Fehlermeldung und bin deshalb auf diesem Thread gelandet.
Nachdem ich aber die andere Fehlermeldung betr. eines inaktiven Plugins (SEOfant) durch löschen desselben beseitigt hatte, war auch obige Fehlermeldung verschwunden. Weshalb auch immer…
Da von @zitronentee keine Rückmeldung gekommen ist, schließe ich den Thread und markiere ihn als gelöst.