WordPress-Wartung & Support — zuverlässig, persönlich, aus einer Hand
WordPress-Wiki · Fachbegriff

Cronjob / WP-Cron

WP-Cron ist das WordPress-eigene System zur Ausführung zeitgesteuerter Aufgaben. Anders als ein klassischer Server-Cronjob wird WP-Cron nicht vom Betriebssystem in festen Intervallen aufgerufen, sondern bei jedem Seitenaufruf eines Besuchers geprüft und ausgelöst. WordPress nutzt dieses System unter anderem für geplante Veröffentlichungen, Update-Prüfungen, das Versenden von E-Mail-Benachrichtigungen und zahlreiche Plugin-Funktionen.

Technischer Hintergrund

Wenn ein Besucher eine WordPress-Seite aufruft, prüft WordPress im Hintergrund, ob geplante Aufgaben (sogenannte Cron-Events) fällig sind. Falls ja, wird ein asynchroner HTTP-Request an die Datei wp-cron.php ausgelöst, die die anstehenden Aufgaben abarbeitet. Dieses System funktioniert zuverlässig bei Websites mit regelmäßigem Traffic, hat aber eine grundlegende Schwäche: Ohne Besucher werden auch keine Aufgaben ausgeführt.

Die Alternative ist ein echter Server-Cronjob, der wp-cron.php in festen Intervallen aufruft – unabhängig vom Besucheraufkommen. Dazu wird in der wp-config.php die Konstante DISABLE_WP_CRON auf true gesetzt, um den besucherbasierten Aufruf zu deaktivieren. Anschließend wird ein Server-Cronjob eingerichtet, der wp-cron.php beispielsweise alle 15 Minuten per wget oder über WP-CLI mit wp cron event run --due-now aufruft.

Registrierte Cron-Events lassen sich über WP-CLI mit wp cron event list auflisten. Das zeigt alle geplanten Aufgaben mit Zeitplan und nächstem Ausführungszeitpunkt. Plugins registrieren häufig eigene Cron-Events, die auch nach Deaktivierung des Plugins in der Datenbank verbleiben können.

Bedeutung für die WordPress-Wartung

Ein funktionierendes Cron-System ist entscheidend für die Zuverlässigkeit einer WordPress-Website. Automatische Backups, geplante Beitragsveröffentlichungen, Update-Benachrichtigungen und viele Plugin-Funktionen hängen davon ab. Wenn WP-Cron nicht korrekt arbeitet, werden Beiträge nicht zum geplanten Zeitpunkt veröffentlicht, Backups fallen aus und zeitgesteuerte Aufgaben stauen sich.

Im Wartungskontext empfiehlt es sich, WP-Cron durch einen echten Server-Cronjob zu ersetzen. Das verbessert die Zuverlässigkeit, reduziert die Last auf den Server (da nicht bei jedem Seitenaufruf geprüft wird) und stellt sicher, dass Aufgaben auch bei geringem Traffic pünktlich ausgeführt werden.

Häufige Probleme

  • Bei Websites mit wenig Traffic werden geplante Aufgaben erst mit erheblicher Verzögerung oder gar nicht ausgeführt.
  • Geplante Beiträge werden nicht zum vorgesehenen Zeitpunkt veröffentlicht („Missed Schedule“-Fehler).
  • Deaktivierte Plugins hinterlassen verwaiste Cron-Events, die bei jedem Durchlauf Fehler verursachen.
  • Caching-Plugins oder serverseitiges Caching verhindern den Aufruf von wp-cron.php.
  • Auf Websites mit sehr hohem Traffic verursacht der besucherbasierte WP-Cron-Aufruf unnötige Serverlast.

Best Practices

  • WP-Cron durch einen echten Server-Cronjob ersetzen und DISABLE_WP_CRON in der wp-config.php auf true setzen.
  • Den Server-Cronjob auf ein sinnvolles Intervall einstellen (z. B. alle 15 Minuten).
  • Regelmäßig die Liste der registrierten Cron-Events prüfen und verwaiste Einträge entfernen.
  • Die korrekte Ausführung geplanter Aufgaben überwachen, insbesondere Backups und geplante Veröffentlichungen.
  • Bei Einsatz von WP-CLI den Befehl wp cron event run --due-now im Cronjob verwenden, da dies zuverlässiger als ein HTTP-Aufruf ist.
Von der Erklärung zur sicheren Praxis

In unserer Wartung setzen wir Updates, Backups, Monitoring und Sicherheitsmaßnahmen als abgestimmten Prozess um. Wartungsleistungen ansehen →

← Zurück zum WikiWebsite kostenlos prüfen lassen