Cronjobs in TYPO3

In TYPO3 lassen sich Cronjobs ganz einfach mit dem Scheduler erstellen, um PHP-Skripte im Hintergrund auszuführen.

Wenn Du TYPO3 benutzt, hast Du bestimmt schon von TYPO3 Cronjobs gehört. Diese erlauben Dir, automatisierte Aufgaben, wie z.B. das Ausführen von Code oder Befehlen, im Hintergrund auszuführen. Das Einrichten von Cronjobs in TYPO3 ist einfacher, als Du denkst: Du musst nur den Scheduler aktivieren, die gewünschten Tasks hinzufügen und den Cronjob auf Deinem Hosting-Server einrichten. Es ist ein Schritt-für-Schritt-Prozess, der Dir ermöglicht, die volle Kontrolle über Deine Cronjobs zu haben.

Was ist ein Cronjob?

Ein Cronjob ist ein wichtiger Bestandteil von TYPO3, der es Dir ermöglicht, regelmäßig wiederkehrende Aufgaben automatisch ausführen zu lassen. Dabei kann es sich um verschiedene Tasks handeln, wie z.B. das Löschen von temporären Dateien, Import-/Export - Skripte, Bulk E-Mailversand oder das Aktualisieren von Datenbanken.

Der Vorteil von Cronjobs besteht darin, dass sie vom Server aus ausgeführt werden. Dadurch ist keinerlei Benutzerinteraktion auf Deiner Webseite erforderlich. Alles geschieht im Hintergrund, ohne dass Deine Benutzer davon etwas mitbekommen.

Wie erstellt man ein Cronjob?

Wenn Du in TYPO3 eine bestimmte Aufgabe automatisch ausführen möchtest, dann ist ein Cronjob die perfekte Lösung. Dabei ist der Cronjob kein Teil von TYPO3 selber, sondern Teil deines Webservers. Egal, ob UNIX oder Windows - Server, beide unterstützen Cronjobs.

Die Erstellung auf Unix - Ebene geht mittels des crontab - Befehls oder über der Adminoberfläche Deines Hosters.

Eine Zeile innerhalb der crontab - Datei ist folgenden Gruppen aufgeteilt:

<Zeitintervall> <Pfad zur PHP Binary> <Pfad zum Scheduler CLI Skript>

Zeitintervall

Die erste Gruppe ist die Angabe des Zeitintervalls. Dieser kann sehr vielfältig sein. Beispielsweise lässt sich ein CLI Skript in folgenden Zeitabständen ausführen:

  • jede Minute an jedem Tag in jedem Monat entspricht * * * * *
  • jeden Tag um 0 Uhr, entspricht 0 0 * * *
  • um 0 Uhr am ersten Tag jedes Monats, entspricht 0 0 1 * *

Die Anzahl der Ziffern ist nicht zufällig, sondern immer 5 Stück. Diese haben folgende Bedeutung:

1. Stelle 2. Stelle 3. Stelle 4. Stelle 5. Stelle
Minute Stunde Tag im Monat Monat Tag in der Woche (0 = Sonntag)

PHP Binary

An dieser Stelle musst du den absoluten Serverpfad zur PHP-Binary angeben. Es ist wichtig, dass es die gleiche PHP-Version mit den gleichen Einstellungen ist wie die Deiner TYPO3-Webseite. Das mag selbstverständlich klingen, ist es aber nicht unbedingt. Besonders wenn Dein Hoster es erlaubt, für jede Domain eine andere PHP-Version anzugeben, musst Du genau darauf achten, welche PHP-Version Deine TYPO3-Webseite verwendet. Du kannst dies selbst im Install Tool überprüfen.

Pfad zum Scheduler CLI Skript

Der absolute Serverpfad zu dem CLI Skript des TYPO3 Schedulers kannst du ganz einfach im Backend nachlesen.

Gehe dazu in das Backendmodul des Schedulers und wähle im obigen DropDown - Menü: Scheduler Setup check aus.

Scheduler Backend Modul -> Setup Check

Dort findest Du bei CLI Script den absoluten Serverpfad, den Du so kopieren kannst.

Was ist der Scheduler?

Der TYPO3 Scheduler ist eine Systemextension, die aus eine Backendmodul und Scheduler Tasks besteht.

Der Scheduler wird vom Server via Cronjob ausgeführt. Der Scheduler prüft dann, welche Scheduler Tasks in diesem Durchlauf ausgeführt werden sollen. Dabei können die Scheduler Tasks ebenso zeitgesteuert eingestellt werden, wie ein Cronjob.

Ein Scheduler Tasks ist eine PHP Klasse mit einem bestimmten Aufbau. In diesem Task kannst du Deinen eigenen PHP Code einbinden.

Ab TYPO3 12 wird allerdings empfohlen, keinen Task zu erstellen, sondern ein Symfony Command.

Fazit

Du hast nun alle wichtigen Schritte gelernt, um einen TYPO3 Cronjob einzurichten und zu nutzen.

Damit Du in TYPO3 Cronjobs nutzen kannst, musst Du sicherstellen, dass Dein Hoster oder Hostingpaket es zulässt serverseitig Cronjobs zu erstellen. Oftmals haben Einsteigerpakete keine Möglichkeit, Cronjobs zu erstellen.

Wenn Du diese Schritte befolgst und Deinen TYPO3 Cronjob richtig einrichtest, können automatisierte Tasks ein echter Zeitgewinn sein und Dir viel Arbeit ersparen.

Wenn Du lernen möchtest, wie man in TYPO3 Scheduler Tasks und Symfony Commands erstellt. Dann schaue auf meinem YouTube-Kanal vorbei. Dort findest du unter anderem ein Scheduler Task und Symfony Command Tutorial.

Bereit mehr zu lernen?

Dann komme in meine TYPO3 Onlineschule

Als Mitglied des T3 Campus für TYPO3 Schulungen erhältst du eine einzigartige Lernplattform, um professionelle Webseiten mit TYPO3 zu erstellen. Egal, ob du ein Einsteiger, Umsteiger oder bereits erfahren bist – hier findest du die passenden Lernvideos für dich.

Kevin Chileong Lee

Gründer vom T3 Campus, TYPO3 Experte mit 10+ Jahren Erfahrung, TYPO3 Liebhaber.

Ich helfe dir dabei, deine Projekte in TYPO3 umzusetzen.

Insbesondere für TYPO3 Einsteiger biete ich zahlreiche kostenfreie Tutorials und kostenpflichtige Kurse rund um TYPO3 an.
Damit kannst du in wenigen Tagen auch ohne Vorkenntnisse deine erste TYPO3 Webseite erstellen und Erweiterungen programmieren.

Auf meinem YouTube-Kanal findest du viele praktische Beispiele und Videotutorials als auch allgemein Videos zu diversen TYPO3 Themen.

Neber den TYPO3 Tutorials und Kopiervorlagen, schreibe ich auch Artikel auf meinem Blog über diverse Themen und Fragen, die die meisten TYPO3 Einsteiger, haben.

Wenn du auf dem Laufenden sein möchtest über meine Projekte, dann abonniere den Newsletter.