Cronjob in Plugin nach 5.2 System erstellen?

Vor dem 5.2 Plugin System wurde in Bootstrap.php die Klasse Shopware_Components_Plugin_Bootstrap extended, wodurch es möglich war, in der install-Methode z.B. folgendes auszuführen, um einen Cronjob zu erstellen:

$this->createCronJob("Product Export", "ProductExport", 86400);

Nach dem 5.2 Plugin System wird aber nicht mehr Shopware_Components_Plugin_Bootstrap sondern \Shopware\Components\Plugin extended. Hier steht $this->createCronJob(…) leider nicht mehr zur Verfügung.

Wie soll man nach dem 5.2 Plugin System einen Cronjob bei der Installation eines Plugins anlegen?
Muss ich wirklich selbst ein INSERT in den s_crontab table durchführen?

Guten Morgen pwagner,

leider ist das momentan nicht möglich. Du musst es genauso machen wie du beschrieben hattest. 

Viele Grüße,
Simon

1 Like

Danke!

Können Sie mir vielleicht noch sagen, ob s_crontab.pluginID dabei auch befüllt werden sollte - und falls ja, welchen Nutzen das bringt?

Kann leer sein.

Hier hast du ein ganzes Beispiel 

2 Likes

Besten Dank, Shyim!

Fall jemand noch auf diesen Beitrag hier kommt, die Zeit geht weiter und Shopware entwickelt sich. Seit längerem gibt es für die genannte Problematik auch einen anderen Ansatz.

Plugin quick Startup Guide

Ich hoffe das Hilft dem einen oder anderen weniger zu Suchen.

Wenn man die XML verwendet, wird der Cron beim installieren angelegt und beim deinstallieren auch wieder gelöscht, ohne weitere Angaben in der De-/Install Methode zu machen.

Gruß Dwza

2 Likes