Zum Inhalt springen
dataloft
  1. Ratgeber
  2. WordPress + Web

Cron Jobs in WordPress – wofür ist das?

Roger Klein · 7. Oktober 2019 · 3 Min. lesen

Erstmals erschienen im Oktober 2019, im Oktober 2026 neu geschrieben.

WordPress hat keinen Wecker. Geplante Aufgaben laufen erst, wenn jemand die Website aufruft. Meist merkst du davon nichts. Wenn aber ein geplanter Beitrag nicht erscheint oder die Sicherung ausbleibt, liegt es oft genau daran.

Was ein Cron-Job ist

Cron ist ein Dienst auf Linux-Servern, der Befehle zu festen Zeiten ausführt: jede Nacht um drei oder jeden ersten Montag im Monat. Eine solche geplante Aufgabe heisst Cron-Job. Der Server führt sie aus, ob jemand zuschaut oder nicht.

Wie WordPress es löst

WordPress läuft auch auf einfachen Hostings, bei denen man keinen Zugriff auf den Cron des Servers hat. Darum bringt es einen eigenen Ersatz mit: WP-Cron.

WP-Cron führt eine Liste mit Aufgaben und ihren Zeiten. Bei jedem Seitenaufruf schaut WordPress nach, ob etwas fällig ist, und stösst es im Hintergrund an. Die Datei dahinter heisst wp-cron.php.

Über diese Liste läuft mehr, als man denkt:

  • geplante Beiträge veröffentlichen
  • nach Updates für WordPress, Plugins und Themes suchen
  • Sicherungen eines Backup-Plugins
  • E-Mails aus einer Warteschlange versenden
  • den Seiten-Cache neu aufbauen
  • im Shop: Bestellungen abschliessen, Abos verlängern, Lager abgleichen

Wo es hakt

Wenig Besuch. Kommt nachts niemand vorbei, läuft auch nichts. Der Beitrag, der um sechs Uhr erscheinen sollte, erscheint um halb neun, wenn der erste Besucher kommt. WordPress markiert ihn dann in der Beitragsliste als verpasst, je nach Sprachfassung mit «Überfällig» oder «Verpasste Planung».

Seiten-Cache. Liefert ein Cache die fertige Seite aus, startet WordPress gar nicht erst. Dann zählt auch ein gut besuchter Tag nicht als Anstoss. Je besser der Cache, desto seltener läuft WP-Cron.

Viel Besuch. Auf stark besuchten Websites prüft WordPress bei sehr vielen Aufrufen, ob etwas fällig ist. Das kostet jedes Mal ein wenig Rechenzeit.

So prüfst du, ob es läuft

  • Website-Zustand: Unter «Werkzeuge» und «Website-Zustand» meldet WordPress, wenn ein geplantes Ereignis verspätet ist oder fehlgeschlagen ist.
  • Plugin WP Crontrol: Es zeigt die ganze Liste mit nächster Ausführung. Aufgaben, deren Zeit schon lange vorbei ist, fallen sofort auf.
  • WP-CLI: Wer Zugriff auf die Kommandozeile hat, sieht dasselbe mit wp cron event list.

Auf einen echten Cron-Job umstellen

Die saubere Lösung besteht aus zwei Schritten. Zuerst schaltest du den Anstoss über Seitenaufrufe ab, dann lässt du den Server die Aufgabe übernehmen.

Schritt 1: In der Datei wp-config.php diese Zeile einfügen, oberhalb des Kommentars, nach dem man nichts mehr bearbeiten soll:

define( 'DISABLE_WP_CRON', true );

Ein Screenshot eines Code-Editors. Ein roter Pfeil zeigt auf die Zeile, die im Text oben steht.

Schritt 2: Beim Hoster einen Cron-Job einrichten, der wp-cron.php regelmässig aufruft. Alle fünf bis fünfzehn Minuten reicht für die meisten Websites. Bei vielen Hostern geht das im Kundenbereich mit ein paar Klicks: Adresse eintragen, Intervall wählen.

Die Adresse lautet:

https://deine-domain.ch/wp-cron.php

Mit Zugriff auf die Kommandozeile geht es ohne Webaufruf, und das ist die robustere Variante:

*/5 * * * * cd /pfad/zu/wordpress && wp cron event run --due-now --quiet

Achte auf die Reihenfolge. Schritt 1 ohne Schritt 2 schaltet alle geplanten Aufgaben ab. Dann erscheint kein geplanter Beitrag mehr und keine Sicherung läuft. Prüfe nach der Umstellung im Website-Zustand, ob alles pünktlich ist.

Die offizielle Anleitung dazu steht im Handbuch für Entwickler von WordPress (englisch).

Wann sich das lohnt

Für eine kleine Website mit regelmässigem Besuch und ohne zeitkritische Aufgaben reicht WP-Cron, wie es ist. Umstellen lohnt sich, wenn

  • geplante Beiträge pünktlich erscheinen müssen,
  • ein Shop oder ein Newsletter-Versand daran hängt,
  • die Website stark gecacht ist,
  • oder der Website-Zustand wiederholt verspätete Ereignisse meldet.
Roger Klein Geschäftsführer dataloft GmbH. WordPress seit Version 3, Frauenfeld. Verantwortet bei dataloft Strategie, Architektur und KI-Integration. Baut mit Mattes und Elena rundum.dog, die grösste deutschsprachige Hunde-Wissensplattform.

Weiterlesen