Geplante Beiträge bleiben auf „geplant“, Backups laufen nicht, WooCommerce räumt keine Sessions auf: Wenn zeitgesteuerte Aufgaben unzuverlässig werden, steckt fast immer WP-Cron dahinter — WordPress‘ eingebaute Zeitsteuerung, die eine entscheidende Schwäche hat.
Warum WP-Cron unzuverlässig ist — by Design
WP-Cron ist kein echter Zeitplaner. Er wird nur beim Seitenaufruf angestoßen: Besucht jemand die Website, prüft WordPress, ob Aufgaben fällig sind, und arbeitet sie ab. Die Konsequenzen:
- Keine Besucher = keine Cron-Läufe. Auf ruhigen Websites verschieben sich Aufgaben um Stunden.
- Page Caching verschärft es: Liefert der Cache die Seite aus, ohne PHP zu starten, wird auch kein Cron angestoßen — ausgerechnet gut optimierte Websites treffen es am härtesten.
- Besucher zahlen die Zeche: Fällige schwere Aufgaben laufen im Seitenaufruf eines zufälligen Besuchers mit — im Extremfall bis zum Timeout.
Diagnose: Was hängt konkret?
- Installiere WP Crontrol — das Plugin zeigt unter Werkzeuge → Cron Events alle geplanten Aufgaben, ihre Fälligkeit und ob Läufe überfällig sind.
- Rot markierte, lange überfällige Events bestätigen: Der Cron kommt nicht zum Zug.
- Prüfe außerdem die
wp-config.phpaufdefine('DISABLE_WP_CRON', true);— wenn das gesetzt ist, ohne dass ein Server-Cron existiert, läuft schlicht gar nichts. (Diese Konstellation ist erstaunlich verbreitet: von einer Optimierungs-Anleitung übernommen, zweiten Schritt vergessen.)
Die dauerhafte Lösung: echter Server-Cron
Professionell betriebene WordPress-Websites koppeln die Zeitsteuerung vom Besucherverkehr ab:
- WP-Cron im Seitenaufruf abschalten — in der wp-config.php:
define('DISABLE_WP_CRON', true); - Server-Cronjob anlegen (im Hosting-Panel, Intervall alle 5 Minuten):
*/5 * * * * wget -q -O - https://deine-domain.de/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Alternativ mit WP-CLI, wenn SSH verfügbar ist:*/5 * * * * cd /pfad/zu/wordpress && wp cron event run --due-now - Kontrolle: Nach ein paar Stunden in WP Crontrol prüfen — keine überfälligen Events mehr? Dann läuft es.
Jetzt laufen geplante Aufgaben pünktlich, unabhängig vom Traffic, und kein Besucher wartet mehr auf fremde Hintergrundarbeit.
Wenn einzelne Aufgaben trotzdem hängen
- Verwaiste Events: Deinstallierte Plugins hinterlassen Cron-Einträge, die ins Leere laufen und Fehler werfen. In WP Crontrol erkennbar an Hooks ohne zugehörige Aktion — löschen.
- Ein Event blockiert die Kette: Ein hängender Job (z. B. ein Backup, das nie fertig wird) kann nachfolgende verzögern. Das Plugin-Log des jeweiligen Anbieters zeigt, woran es klemmt.
- Timeout-/Speicher-Grenzen: Schwere Cron-Jobs brauchen dieselben Ressourcen wie Seitenaufrufe — bei Fehlern lohnt der Blick in den Artikel Memory Exhausted.
Geplante Beiträge: „Verpasster Zeitplan“
Die Fehlermeldung „Verpasster Zeitplan“ bei geplanten Beiträgen ist das bekannteste WP-Cron-Symptom. Mit dem Server-Cron verschwindet sie dauerhaft — die diversen „Missed Schedule Fixer“-Plugins bekämpfen nur das Symptom und legen sich dafür in jeden Seitenaufruf.
Bei Ammera Care hängt Kritisches gar nicht erst an WP-Cron: Backups, Updates und Prüfungen steuert unsere Plattform serverseitig von außen — zuverlässig getaktet, überwacht, mit Protokoll. Deiner Website bleibt der Ballast erspart. Zum Core-Modul.