Ein Cronjob ist ein Begriff, der in der Welt der Webentwicklung und insbesondere im Kontext von WordPress häufig vorkommt. Aber was genau ist ein Cronjob? Das Wort „Cron“ leitet sich vom griechischen Wort „Chronos“ ab, was „Zeit“ bedeutet. In der digitalen Welt bezieht sich ein Cronjob auf eine Aufgabe, die automatisch und zu vordefinierten Zeitintervallen ausgeführt wird. Diese zeitgesteuerten Aufgaben sind besonders nützlich, wenn regelmäßige Aktualisierungen oder Aktionen auf einer Website oder einem Server durchgeführt werden müssen, ohne dass ein Benutzer manuell eingreifen muss.
Integrierte WordPress Cronjobs über die wp-cron.php
In der WordPress-Umgebung werden Cronjobs oft als „cron php“ oder „php cronjob“ bezeichnet. WordPress hat ein eingebautes System, um solche zeitgesteuerten Aufgaben zu verwalten. Dieses System ist in der Datei „wp-cron.php“ enthalten, die manchmal auch einfach als „cron.php“ bezeichnet wird.
In WordPress sind alle zeitgesteuerten Aufgaben, die als Cronjobs bezeichnet werden, in der Datenbank hinterlegt. Das bedeutet, dass jede geplante Aktion, sei es die Veröffentlichung eines geplanten Beitrags, die Überprüfung auf Updates oder das Senden von Benachrichtigungen, in der WordPress-Datenbank gespeichert und zu den festgelegten Zeiten von „wp-cron.php“ aufgerufen wird.
Obwohl WordPress ein eingebautes Cron-System hat, handelt es sich lediglich um einen „Pseudo-Cron“. Das bedeutet, dass die zeitgesteuerten Aufgaben nicht genau in den festgelegten Intervallen ausgeführt werden, sondern nur, wenn jemand die Website besucht. Für Websites mit hohem Traffic mag dies kein Problem sein, aber für Websites mit geringerem Traffic kann dies zu Verzögerungen bei der Ausführung von Aufgaben führen (zum Beispiel auf Staging oder DEV-Umgebungen).
Daher ziehen es viele WordPress-Administratoren vor, echte Cronjobs über den Server oder das Hosting-Panel einzurichten, um eine genauere und zuverlässigere Ausführung zu gewährleisten. Dies steigert auch die Performance, da Hintergrundaufgaben nicht mehr über PHP, sondern über den Server ausgeführt werden.
Die Notwendigkeit, einen echten Cronjob in WordPress einzurichten
Die in WordPress integrierte Pseudo-Cron-Funktionalität mag auf den ersten Blick praktisch erscheinen, birgt jedoch einige signifikante Herausforderungen. Stell Dir vor, Du hast einen wichtigen Beitrag geplant, der zu einem bestimmten Zeitpunkt veröffentlicht werden soll und aufgrund des Pseudo-Cron-Systems wird er nicht wie geplant live geschaltet. Nicht gerade die beste Situation, oder?
Statistiken zeigen, dass trotz dieser Einschränkungen über 70% der WordPress-Websites immer noch auf das Pseudo-Cron-System setzen. Dies könnte auf mangelndes Wissen oder einfach auf Bequemlichkeit zurückzuführen sein.
Eigenschaft | Pseudo-Cron | Echter Cronjob |
---|---|---|
Ausführung | Bei Website-Besuch | In festgelegten Intervallen |
Zuverlässigkeit | Kann unzuverlässig sein | Sehr zuverlässig |
Einrichtung | Standard in WordPress | Erfordert zusätzliche Schritte beim Hoster |
Dies bietet nicht nur eine zuverlässigere Ausführung geplanter Aufgaben, sondern kann auch die allgemeine Performance und Benutzererfahrung Deiner Website steigern.
Wie man einen echten WordPress Cronjob einrichtet
Das Einrichten eines echten Cronjobs kann je nach Webhosting-Anbieter variieren. Viele moderne Hosting-Anbieter, wie All Inkl, bieten jedoch eine einfache Möglichkeit, einen cronjob anzulegen oder cronjob zu erstellen über ihre Administrations-Oberfläche.
WordPress Cronjob einrichten bei All Inkl
Um bei All Inkl einen Cronjob einzurichten, muss Du Zugriff zum KAS (technische Verwaltung) haben. Dort findest Du im Punkt Tools den Unterpunkt Cronjob, um einen neuen Cronjob anzulegen.
Wenn dies nicht funktioniert, musst Du dem Subaccount die Anzahl möglicher Cronjobs hochsetzen. Andernfalls solltest Du überprüfen welchen All Inkl Account Du hast und von Privat auf mindestens PrivatPlus upgraden (wir empfehlen Premium).
Du kannst nun die folgenden Angaben machen:
- Protokoll/Pfad: https://DeineDomain.de/wp-cron.php
- Beschreibung: Frei wählbar (erscheint in der Cronjob-Liste)
- Ausführungsintervall: Jede Minute, alle 5 Minuten oder eine andere Frequenz
- Gib entweder den Zeitpunkt oder das Zeitintervall an
Die weiteren Konfigurationsmöglichkeiten sind in diesem Kontext oft nebensächlich: Sie ermöglichen seltener stattfindende Aufrufe oder den Zugriff auf WordPress-Installationen, die durch einen HTTP-Passwortschutz geschützt sind (meist Staging oder DEV-Umgebungen).
Abhängig von der Anzahl der Plugins und Tools, die Du einsetzt und die im Hintergrund arbeiten oder Updates durchführen, kannst Du das Zeitintervall anpassen. Ein Intervall von 5 bis 30 Minuten ist empfehlenswert. Sobald Du auf „Speichern“ klickst, wird die wp-cron.php regelmäßig vom All-Inkl Server aufgerufen.
Weitere Informationen zum Cronjob bei All Inkl findest Du hier.
WordPress Cronjob deaktiveren
Sobald der Cronjob bei Deinem Hosting-Anbieter eingerichtet ist, bleibt die wp-cron.php aktiv und wird weiterhin jedes Mal ausgeführt, wenn jemand Deine Website besucht. Um Überlappungen zu vermeiden, ist es sinnvoll den Standard-Pseudo-Cronjob von WordPress zu deaktivieren. Für diesen Schritt loggst Du Dich über FTP in Deinen Webspace ein und öffnest die Datei wp-config.php. Dort gibst Du folgende Zeite ein:
/** Deaktiviere den Pseudo Cron von WordPress */ define('DISABLE_WP_CRON', true);