Logo von CURIAWEB, Anbieter für Webhosting, Domains und WordPress Hosting

WP-Cron in WordPress deaktivieren und durch einen echten Cronjob ersetzen

Lesezeit ca.: 9 Minuten

WordPress führt zahlreiche wiederkehrende Aufgaben automatisch im Hintergrund aus. Dazu gehören beispielsweise geplante Beiträge, automatische Updates, Wartungsaufgaben, das Versenden bestimmter E-Mails oder zeitgesteuerte Aktionen von Plugins. Für diese Aufgaben verwendet WordPress standardmässig das sogenannte WP-Cron-System.

WP-Cron ist allerdings kein echter Cronjob des Servers. WordPress versucht stattdessen bei Seitenaufrufen zu prüfen, ob geplante Aufgaben ausgeführt werden müssen. Bei stark frequentierten Websites kann das unnötige zusätzliche Prozesse verursachen. Bei Websites mit sehr wenig Besucherverkehr besteht dagegen das umgekehrte Problem: Geplante Aufgaben können verspätet ausgeführt werden, weil längere Zeit kein Seitenaufruf stattfindet.

Eine technisch sauberere Lösung besteht darin, den automatischen WP-Cron-Aufruf von WordPress zu deaktivieren und stattdessen einen echten Cronjob auf dem Server einzurichten. Bei einem CURIAWEB Webhosting kannst du dies über cPanel konfigurieren.

Wichtig: Deaktiviere WP-Cron niemals einfach nur in WordPress. Wenn du WP-Cron deaktivierst, solltest du anschliessend einen Server-Cronjob einrichten, der die geplanten WordPress-Aufgaben regelmässig ausführt.

Was ist WP-Cron? #

WP-Cron ist das interne System von WordPress für zeitgesteuerte Aufgaben. Der Name ist etwas irreführend, denn technisch handelt es sich nicht um einen klassischen Cron-Dienst des Betriebssystems.

WordPress verwendet WP-Cron beispielsweise für:

  • geplante Blogbeiträge
  • automatische WordPress-Updates
  • Plugin- und Theme-Aufgaben
  • das Löschen temporärer Daten
  • zeitgesteuerte E-Mails
  • WooCommerce-Aufgaben
  • Backup-Plugins
  • Cache- und Optimierungsaufgaben
  • Newsletter- und Marketing-Plugins
  • andere von Plugins registrierte Hintergrundprozesse

Plugins können eigene Aufgaben in das WordPress-Cron-System eintragen. Deshalb kann die Anzahl der geplanten Prozesse auf einer umfangreichen WordPress-Website deutlich höher sein als bei einer einfachen Installation.

Wie funktioniert WP-Cron standardmässig? #

Bei einem normalen WordPress-Aufruf prüft WordPress, ob geplante Cron-Aufgaben zur Ausführung anstehen. Vereinfacht gesagt wird WP-Cron also durch Aktivität auf der Website angestossen.

Die dafür zuständige WordPress-Datei ist:

wp-cron.php

Dieses Verfahren hat einen grossen Vorteil: WordPress funktioniert damit auch auf Hosting-Systemen, auf denen Benutzer keine eigenen Server-Cronjobs einrichten können.

Es hat aber auch Nachteile.

Warum kann WP-Cron problematisch sein? #

WP-Cron ist für viele Websites völlig ausreichend. Es gibt deshalb keinen Grund, WP-Cron bei jeder WordPress-Installation grundsätzlich zu deaktivieren.

Bei bestimmten Websites kann ein echter Server-Cronjob jedoch zuverlässiger und effizienter sein.

Problem 1: Viele Seitenaufrufe #

Bei stark frequentierten Websites wird die WP-Cron-Prüfung sehr häufig angestossen. WordPress besitzt zwar Mechanismen, um parallele Ausführungen zu begrenzen, dennoch kann das Standardverfahren unnötige zusätzliche Arbeit verursachen.

Ein Server-Cronjob führt die Prüfung dagegen in einem fest definierten Intervall aus, beispielsweise alle fünf Minuten.

Problem 2: Sehr wenige Seitenaufrufe #

Bei einer Website mit wenig oder gar keinem Besucherverkehr kann das Gegenteil passieren. Wenn niemand die Website aufruft, fehlt möglicherweise der Impuls für WP-Cron.

Eine für 08:00 Uhr geplante Aufgabe muss deshalb nicht zwingend exakt um 08:00 Uhr ausgeführt werden. Sie kann erst beim nächsten geeigneten Aufruf angestossen werden.

Ein echter Server-Cronjob arbeitet dagegen unabhängig davon, ob gerade jemand die Website besucht.

Hinweis: WP-Cron ist kein grundsätzlich schlechtes System. Für kleine Websites reicht die WordPress-Standardkonfiguration häufig vollkommen aus. Ein echter Cronjob wird vor allem interessant, wenn geplante Aufgaben zuverlässiger oder kontrollierter ausgeführt werden sollen.

Wann lohnt sich ein echter Cronjob? #

Die Umstellung kann insbesondere bei Websites sinnvoll sein, die viele zeitgesteuerte oder ressourcenintensive Aufgaben ausführen.

Typische Beispiele sind:

  • grössere WordPress-Websites
  • WooCommerce-Shops
  • Websites mit vielen Besuchern
  • Websites mit sehr wenig Besucherverkehr, aber wichtigen geplanten Aufgaben
  • Websites mit automatisierten Backups
  • Newsletter-Systeme
  • Import- und Exportprozesse
  • regelmässige Synchronisationen
  • Plugins mit zahlreichen Hintergrundaufgaben

Wenn deine Website problemlos funktioniert und keine zeitkritischen Hintergrundprozesse verwendet, musst du WP-Cron nicht allein aus Prinzip ersetzen.

Schritt 1: Backup erstellen #

Für die Deaktivierung des automatischen WP-Cron-Aufrufs muss die WordPress-Konfigurationsdatei wp-config.php bearbeitet werden.

Erstelle deshalb vor der Änderung ein Backup der Datei oder besser ein vollständiges Backup deiner WordPress-Website.

Die Datei wp-config.php gehört zu den wichtigsten Dateien einer WordPress-Installation. Ein Syntaxfehler kann dazu führen, dass WordPress nicht mehr korrekt geladen wird.

Warnung: Bearbeite die Datei wp-config.php sorgfältig. Schon ein fehlerhaftes Zeichen oder eine falsch eingefügte PHP-Anweisung kann zu einem Fehler auf der Website führen.

Schritt 2: wp-config.php öffnen #

Die Datei wp-config.php befindet sich normalerweise im Hauptverzeichnis deiner WordPress-Installation.

Bei CURIAWEB kannst du beispielsweise über den Dateimanager in cPanel auf deine WordPress-Dateien zugreifen.

Bei einer typischen Installation der Hauptdomain befindet sich WordPress häufig unter:

public_html

Je nach Domain- und Verzeichnisstruktur kann WordPress jedoch auch in einem anderen Verzeichnis installiert sein.

Öffne dort die Datei:

wp-config.php

Schritt 3: WP-Cron in WordPress deaktivieren #

Füge folgende Zeile in die Datei wp-config.php ein:

define( 'DISABLE_WP_CRON', true );

Die Anweisung sollte vor der Zeile eingefügt werden, die sinngemäss das Ende der Bearbeitung der WordPress-Konfiguration kennzeichnet.

Je nach Sprachversion beziehungsweise WordPress-Version kann der Kommentar unterschiedlich formuliert sein. Entscheidend ist, dass die Konstante innerhalb der eigentlichen WordPress-Konfiguration definiert wird und nicht nach dem Laden der WordPress-Kernkomponenten.

Speichere anschliessend die Datei.

Mit:

define( 'DISABLE_WP_CRON', true );

verhinderst du, dass WordPress WP-Cron weiterhin über den normalen Seitenaufruf automatisch anstösst.

Wichtig: Die geplanten WordPress-Aufgaben wurden damit nicht gelöscht. Du hast lediglich den standardmässigen automatischen Auslöser deaktiviert. Deshalb benötigen wir jetzt einen Server-Cronjob.

Schritt 4: Cronjobs in cPanel öffnen #

Logge dich in dein CURIAWEB Kundencenter ein und öffne dein Hosting über den direkten cPanel-Login.

Alternativ kannst du cPanel über deinen vorhandenen direkten Zugang öffnen.

Suche in cPanel nach:

Cronjobs

Über diese Funktion können Befehle zu festgelegten Zeitpunkten beziehungsweise in bestimmten Intervallen automatisch vom Server ausgeführt werden.

Wie häufig sollte WordPress-Cron ausgeführt werden? #

Für viele normale WordPress-Websites ist ein Intervall von 5 bis 15 Minuten ausreichend.

Welches Intervall sinnvoll ist, hängt von der Website ab. Ein WooCommerce-Shop oder eine Website mit zeitkritischen Automatisierungen kann andere Anforderungen haben als ein kleiner Unternehmensauftritt.

Ein Cronjob alle fünf Minuten bedeutet beispielsweise:

*/5 * * * *

Ein Cronjob alle 15 Minuten:

*/15 * * * *

Du musst einen Cronjob nicht jede Minute ausführen, wenn dafür kein konkreter technischer Grund besteht. Unnötig kurze Intervalle erzeugen lediglich zusätzliche Prozesse.

Empfehlung: Für eine normale WordPress-Website ist ein Intervall von 5 bis 15 Minuten ein vernünftiger Ausgangspunkt. Verwende kürzere Intervalle nur, wenn deine Website oder ein bestimmtes Plugin dies tatsächlich benötigt.

Schritt 5: Server-Cronjob für WordPress einrichten #

Der Server muss nun die Datei wp-cron.php regelmässig aufrufen.

Dafür gibt es verschiedene technische Möglichkeiten. Welche Variante verwendet wird, hängt unter anderem von der Hosting-Umgebung und dem gewünschten Aufruf ab.

Eine Möglichkeit ist ein HTTP-Aufruf der WordPress-Cron-Datei. Der prinzipielle Aufruf lautet:

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

Ersetze deine-domain.ch durch deine tatsächliche Domain.

In einem Server-Cronjob kann die URL beispielsweise mit einem verfügbaren Kommandozeilenwerkzeug aufgerufen werden. Wichtig ist dabei nicht das Werkzeug selbst, sondern dass wp-cron.php zuverlässig im gewünschten Intervall ausgeführt wird.

Da Serverpfade und verfügbare Befehle je nach Hosting-Konfiguration variieren können, solltest du nicht ungeprüft einen Cron-Befehl von einer fremden Anleitung übernehmen.

Hinweis für CURIAWEB Kunden: Wenn du unsicher bist, welchen Befehl du für dein Hosting verwenden sollst, kontaktiere den CURIAWEB Support. Wir können dir sagen, welche Cronjob-Konfiguration für dein Hosting geeignet ist.

Warum geben wir nicht einfach irgendeinen Cron-Befehl vor? #

Im Internet findest du häufig Befehle mit wget, curl oder einem direkten PHP-Aufruf. Solche Beispiele können funktionieren, sind aber nicht automatisch für jede Hosting-Umgebung identisch.

Ein direkter PHP-Aufruf benötigt beispielsweise den korrekten Serverpfad zur WordPress-Installation und gegebenenfalls den richtigen PHP-Binary-Pfad. Ein HTTP-Aufruf hängt wiederum von Domain, HTTPS-Konfiguration und Serverumgebung ab.

Eine Anleitung mit einem erfundenen oder fremden Serverpfad wäre deshalb schlechter als eine saubere Konfiguration für das tatsächlich verwendete Hosting.

WP-Cron und PHP-Version #

Wenn der Cronjob WordPress direkt über PHP auf dem Server ausführt, sollte darauf geachtet werden, dass die verwendete PHP-Version zur WordPress-Installation passt.

Das ist insbesondere dann relevant, wenn auf einem Hosting mehrere PHP-Versionen verfügbar sind oder unterschiedliche Websites verschiedene PHP-Versionen verwenden.

Ein Cronjob sollte nicht versehentlich eine andere PHP-Version verwenden als die Website, wenn dadurch Inkompatibilitäten mit WordPress, Themes oder Plugins entstehen.

Funktioniert WordPress nach dem Deaktivieren weiterhin? #

Ja. Die Einstellung DISABLE_WP_CRON deaktiviert WordPress selbst nicht und verhindert auch nicht grundsätzlich die Ausführung geplanter Aufgaben.

Sie verhindert den standardmässigen automatischen WP-Cron-Aufruf bei Website-Zugriffen.

Wenn der Server-Cronjob korrekt eingerichtet ist, wird wp-cron.php stattdessen regelmässig vom Server angestossen und WordPress kann fällige Aufgaben abarbeiten.

Was passiert, wenn kein Server-Cronjob eingerichtet wird? #

Genau hier liegt einer der häufigsten Fehler bei dieser Optimierung.

Wenn du:

define( 'DISABLE_WP_CRON', true );

setzt, aber keinen alternativen Cronjob einrichtest, können geplante WordPress-Aufgaben ausbleiben.

Abhängig von der Website können dann beispielsweise folgende Probleme auftreten:

  • geplante Beiträge werden nicht veröffentlicht
  • automatische Aufgaben von Plugins laufen nicht
  • Backups werden nicht wie geplant erstellt
  • bestimmte E-Mails werden verspätet oder gar nicht ausgelöst
  • WooCommerce-Hintergrundprozesse können beeinträchtigt werden
  • Wartungs- und Bereinigungsaufgaben bleiben liegen

Warnung: DISABLE_WP_CRON ohne funktionierenden Ersatz-Cronjob ist keine Performance-Optimierung, sondern eine fehlerhafte Konfiguration.

Wie kann ich prüfen, ob WordPress-Cron funktioniert? #

Nach der Einrichtung solltest du kontrollieren, ob geplante Aufgaben tatsächlich ausgeführt werden.

Eine einfache Möglichkeit ist ein geplanter WordPress-Beitrag. Erstelle einen Testbeitrag und plane dessen Veröffentlichung für einen zukünftigen Zeitpunkt.

Wird der Beitrag nach Ausführung des Cronjobs veröffentlicht, ist dies ein erster Hinweis darauf, dass geplante WordPress-Aufgaben verarbeitet werden.

Für eine detailliertere Analyse existieren außerdem WordPress-Plugins, mit denen sich registrierte Cron-Ereignisse anzeigen und prüfen lassen. Solche Werkzeuge sind insbesondere bei der Fehlersuche hilfreich.

WP-Cron bei WooCommerce #

Bei WooCommerce ist besondere Vorsicht angebracht. Ein Online-Shop führt zahlreiche Hintergrundaufgaben aus und WooCommerce verwendet für viele Prozesse zusätzlich das Action Scheduler-System.

Dieses wird beispielsweise von WooCommerce selbst und verschiedenen Erweiterungen für Hintergrundprozesse verwendet. Auch dabei spielt eine zuverlässige Ausführung geplanter WordPress-Aufgaben eine wichtige Rolle.

Bei einem produktiven WooCommerce-Shop solltest du WP-Cron deshalb nicht deaktivieren, ohne unmittelbar einen funktionierenden Server-Cronjob einzurichten und dessen Funktion anschliessend zu kontrollieren.

Macht ein echter Cronjob WordPress automatisch schneller? #

Nicht zwangsläufig.

Das Ersetzen des standardmässigen WP-Cron-Auslösers kann die Ausführung geplanter Aufgaben kontrollierbarer machen und bei bestimmten Websites unnötige Cron-Aufrufe während normaler Seitenzugriffe reduzieren.

Es ist aber kein universeller Trick, der jede WordPress-Website plötzlich deutlich schneller macht.

Für die Performance einer WordPress-Website sind unter anderem Hosting-Ressourcen, PHP, Datenbank, Caching, Themes, Plugins, Bilder und die eigentliche Anwendung wesentlich wichtiger.

WP-Cron sollte deshalb aus einem technischen Grund optimiert werden und nicht, weil irgendeine Checkliste behauptet, dass man ihn grundsätzlich deaktivieren müsse.

WP-Cron wieder aktivieren #

Wenn du wieder zum WordPress-Standardverhalten zurückkehren möchtest, öffne die Datei wp-config.php und entferne die zuvor eingefügte Zeile:

define( 'DISABLE_WP_CRON', true );

Anschliessend solltest du auch prüfen, ob der zusätzlich eingerichtete Server-Cronjob weiterhin benötigt wird.

Vermeide eine unkontrollierte Doppelkonfiguration, bei der du Änderungen vornimmst, ohne zu wissen, welcher Mechanismus die Cron-Aufgaben tatsächlich ausführt.

WP-Cron bei CURIAWEB richtig konfigurieren #

Bei einem CURIAWEB Webhosting kannst du einen echten Cronjob über cPanel einrichten. Damit lässt sich die Ausführung geplanter WordPress-Aufgaben unabhängig von tatsächlichen Seitenaufrufen steuern.

Die saubere Vorgehensweise besteht immer aus zwei zusammengehörenden Schritten:

  1. Den automatischen WP-Cron-Aufruf in wp-config.php mit DISABLE_WP_CRON deaktivieren.
  2. Einen funktionierenden Server-Cronjob einrichten, der WordPress regelmässig anstösst.

Wenn du bei Serverpfad, PHP-Version, Cron-Befehl oder Intervall unsicher bist, kontaktiere den CURIAWEB Support, bevor du die Standardkonfiguration deaktivierst.

Empfehlung: Ändere WP-Cron nicht nur deshalb, weil du eine vermeintliche WordPress-Optimierung durchführen möchtest. Wenn deine Website problemlos funktioniert, kann die Standardkonfiguration völlig ausreichend sein. Bei Shops, Automatisierungen oder zeitkritischen Aufgaben kann ein echter Server-Cronjob dagegen die technisch bessere Lösung sein.

Zusammenfassung #

WP-Cron ist das interne Planungssystem von WordPress und wird standardmässig über Website-Aufrufe angestossen. Das funktioniert für viele Websites problemlos, ist aber kein echter zeitgesteuerter Server-Cronjob.

Wenn du WP-Cron durch einen echten Cronjob ersetzen möchtest, fügst du define( 'DISABLE_WP_CRON', true ); in die Datei wp-config.php ein und richtest anschliessend in cPanel einen Server-Cronjob ein, der wp-cron.php regelmässig ausführt. Für viele Websites ist ein Intervall von etwa 5 bis 15 Minuten ein sinnvoller Ausgangspunkt.

Entscheidend ist die Kombination beider Schritte. WP-Cron lediglich zu deaktivieren, ohne einen funktionierenden Ersatz einzurichten, kann geplante Beiträge, Backups, Plugin-Aufgaben und andere WordPress-Prozesse beeinträchtigen.

Letzte Aktualisierung August 27, 2026
War dieser Artikel hilfreich?