Arbeiten Sie in Ihrem Shopware-Online-Shop mit automatisierten Prozessen via Cronjobs, müssen diese noch gestartet werden. Wir erklären Ihnen hier, worauf Sie achten sollten.
Zunächst müssen Sie im Shopware Admin-Bereich (Backend) die Cronjobs konfigurieren und mit Ihren Intervallen erstellen. Das Cronjob-Plugin von Shopware ruft diese nach den von Ihnen definierten Intervallen automatisch auf. Damit dieser Prozess richtig funktioniert, muss auf dem Server auf der dortigen Administrationsoberfläche ein Cronjob eingerichtet werden, der das Skript des Plugins im von Ihnen vorgegebenen Intervall ausführt. Um die Initialzündung für das Plugin zu liefern, benötigt dieser serverseitige Cronjob einen Link zum Cron-Plugin des Shopware-Shops.Lesen Sie dazu auch unseren Artikel, wie Sie im Shopware-Backend einen Cronjob einrichten können.
Das Shopware Cronjob-Plugin muss also über einen Cronjob-Auftrag vom Server aus ausgeführt werden, um seinerseits alle darin gespeicherten Aufgaben (Cronjobs) auszuführen. Wichtig ist an dieser Stelle zu wissen, dass der Server den Cronjob erst zum angegebenen Startzeitpunkt ausführen kann.
Hinweis: Achten Sie besonders darauf, dass Cronjobs immer abgesichert sein sollten, damit sie nicht von außerhalb des Systems ausgeführt werden können. Die Sicherheit Ihres Online-Shops hat oberste Priorität. Grundsätzlich sollten Cronjobs auch nicht manuell ausgeführt werden. Zur Vermeidung von Fehlern empfehlen wir Ihnen daher unbedingt, einen Entwickler mit der Einrichtung zu beauftragen.
Cronjob auf dem Server einrichten – Initialzündung für Cron-Plugin anlegen
Zur Ausführung auf dem Server ist dessen Konfigurationsbereich zu öffnen. Hier hängt es vom Hosting-Anbieter des Servers ab und kann sich stark darin unterscheiden, über welchen Weg man in das Cronjob-Menü gelangt. Meist befindet es sich im Bereich Webseiten oder Allgemeines, wie etwa bei unserem Partner Profihost.
Beispiel: Server-Konfigurationsbereich für Cronjobs bei Profihost
Normalerweise richtet man einen neuen Cronjob mit allen notwendigen Informationen ein, der mit einer Taktung von wenigen Minuten die Cronjobs von Shopware aufruft. Hierbei ist auf die korrekte Eingabe des Intervalls zu achten. Das Intervall besteht aus 5 Einträgen, die aus Ziffern und * bestehen, wobei * für „jede“ steht. Weitere Angaben können mittels Komma (für separate Spaltenwerte) oder mittels Bindestrich (für Reihen) gemacht werden. Angegeben werden:
Minuten Stunden Tagen Monate und „Tage der Woche“
Beispiel: 0 5 * * *
Lösung: 5:00 Uhr jeden Tag, jedes Monats
Hier ein weiteres Beispiel, wie die Einstellung des crontab direkt auf dem Server aussieht:
Im Shopware-Backend selbst richtet man dann die entsprechenden Intervalle für die jeweiligen Aufgaben ein, etwa: Ausführung des Cronjobs “Cache Leeren“ einmal am Tag.
Zur Ausführung (oder Testen) des Server-Cronjobs können Sie diesen per Browser starten, zum Beispiel wie folgt: http://ihrshop.de/backend/cron.
Auf diese Weise rufen Sie alle Cronjobs auf mit Ausnahme des Newsletters. Für diesen ist diese URL anzugeben:
http://ihrshop.de/backend/newsletter/cron
Zu empfehlen ist die Ausführung mittels Shopware-Tools mit dem Befehl aus dem Beispiel: php bin/console sw:cron:run. Sofern fällig, werden auf diese Weise alle geplanten Cronjobs ausgeführt.
Wir hoffen, Ihnen damit ein besseres Verständnis für die Arbeit mit Cronjobs gegeben zu haben und unterstützen Sie gerne mit technischem Support.