Ich versuche gerade einen Cronjob zu erstellen. Der soll mir erstmal nur eine E-Mail schicken. Leider tut sich nichts. Hier mein Plugincode: [code]<?php class Shopware_Plugins_Backend_Borm_Bootstrap extends Shopware_Components_Plugin_Bootstrap
{
public function install()
{
$event = $this->createEvent( 'Shopware\_CronJob\_runBorm', 'mainBorm' ); $this-\>subscribeEvent($event); $this-\>subscribeCron('Borm Export/Import','runBorm',30,1,date('Y-m-d').' 17:00:00'); // 86400 return true; } public static function mainBorm(Shopware\_Components\_Cron\_CronJob $job) { // Mail verschicken $mail = Shopware()-\>Mail(); $mail-\>IsHTML(0); $mail-\>From = Shopware()-\>Config()-\>Mail; // Absender = Mail Shopbetreiber $mail-\>FromName = Shopware()-\>Config()-\>Mail; // Absender = Mail Shopbetreiber $mail-\>Subject = "Test für Borm-Cronjob"; // Betreff $mail-\>Body = "Der Cronjob läuft!"; // Inhalt $mail-\>ClearAddresses(); // Vorherige Adressen entfernen $mail-\>AddAddress('test@test.de'); $mail-\>Send(); } }[/code] Und so wollte ich den Cronjob testen: [code]http://shopdomain.de/shopware.php?module=backend&controller=runBorm[/code] Der Cronjob ist eingetragen und aktiv. Nach Aufruf der URL komm ich auf das Backend-Loginformular. Woran liegt es wohl?
Danke für den Tipp, da war ich auch drauf. Und habe so über den Browser aufgerufen: http://shopdomain.de/shopware.php?module=backend&controller=runBorm Was muss denn als controller übergeben werden? Ist im Plugin alles initiiert? Einen anderen Ansatz sehe ich da gerade nicht.
Hallo, http://www.meinshop.de/shopware.php?mod … oller=cron wäre korrekt - dann wird der Cronjob-Controller ausgeführt und müsste alle nachgelagerten, aktiven Cronjobs ausführen. Zum testen kannst du die Periode deines Cronjobs am besten auf 10 Sekunden oder so setzen - ansonsten würde der ja nur einmal am Tag ausgeführt und das dürfte beim Testen nicht so viel Spaß machen
Der letzte Beitrag ist zwar schon etwas her, aber ich bekomme es ebenfalls nicht hin, und die suche hier ist etwas dürftig zu dem Thema. Also, alles soweit so gut, ich bekomme eine Tolle Meldung Processing Shopware\_CronJob\_KadisCategories Das wars, aber es tut sich garnichts. Cron ist so eingestellt, das er bei jedem Aufruf diesen Job starten soll,damit ich sehen kann ob sich da was tut. Aber, es kommt nichts. Das hier soll er ausführen: public static function onRun(Shopware\_Components\_Cron\_CronJob $job) { //$sql = ""; Shopware()-\>Db()-\>query("DELETE FROM s\_core\_plugins WHERE name = 'MyPlugin'"); //echo "Das ist mein erster Cronjob hier \n"; // Mail verschicken $mail = Shopware()-\>Mail(); $mail-\>IsHTML(0); $mail-\>From = Shopware()-\>Config()-\>Mail; // Absender = Mail Shopbetreiber $mail-\>FromName = Shopware()-\>Config()-\>Mail; // Absender = Mail Shopbetreiber $mail-\>Subject = "Test für Borm-Cronjob"; // Betreff $mail-\>Body = "Der Cronjob"; // Inhalt $mail-\>ClearAddresses(); // Vorherige Adressen entfernen $mail-\>AddAddress('shop@\*\*.de'); $mail-\>Send(); } Damit er den Cronjob anlegt habe ich das auch noch mit in der Bootstrap.php //////CronJobs hinzufügen ///Kategorieliste $event = $this-\>createEvent( 'Shopware\_CronJob\_Kadis\_Categories', 'onRun' ); $this-\>subscribeEvent($event); //Cronjobname, Controllername, Interval, aktiv $this-\>subscribeCron("Kadis :: KaLinka","Kadis\_Categories",1,true); /// ////// so wo ist nun der Fehler, das nichts kommt?
Hallo, ja das ist nun komplett aktiviert. Bekomme auch eine schöne meldung, "progressing … " Aber es passiert nichts. Die hinterlegte Funktion, eine Email zu verschicken, oder ein Echo auszugeben wird nicht ausgeführt.
[quote=“kadis”]Hallo, ja das ist nun komplett aktiviert. Bekomme auch eine schöne meldung, "progressing … " Aber es passiert nichts. Die hinterlegte Funktion, eine Email zu verschicken, oder ein Echo auszugeben wird nicht ausgeführt.[/quote] Der Thread ist schon etwas älter, aber gab es hier eine Lösung? Ich habe das gleiche Problem mit einer alten SW3.5x installation. Kadis, konntest du das damals lösen?
[quote=“kadis”]Hallo, Über Crontab gemacht. PHP Script direkt angesprochen. Zwar nicht so gedacht aber das funktioniert ;)[/quote] mhhh, das hilft mir leider nicht weiter. trotzdem danke evtl hat jemand noch eine Idee.