Opencart Admin Cron Jobs

Știu despre CRON și cum să îl creez/să îl gestionez. Dar această problemă era diferită.

admin controller

Vreau să dezvolt un modul pentru a șterge orice comandă (neplătită) care depășește intervalul de timp dat. Ex: Vreau să șterg orice comandă neplătită care nu a fost plătită timp de 2 zile de la plasarea comenzii.

Vreau să folosesc modelul existent în opencart (și să nu folosesc unul nou). Să presupunem că adresa URL a modulului ar fi: http://www.yourstore.com/admin/index.php?route=module/modulename/function Și va fi apelată de la CRON și apoi orice comandă neplătită va dispărea.

Dar principala problemă este: atunci când CRON dorește să acceseze URL-ul respectiv, are nevoie de un simbol de securitate sau nu va fi executat niciodată.

Întrebarea mea este: cum să executați acel modul de la CRON fără jeton de securitate (în cazul doar pentru acel modul)?

Va rog sa ma ajutati, daca aveti o idee mai buna sau un mod mai curat, v-as multumi mult.

Actualizat: Pentru versiunile Opencart admin/index.php la admin/index_for_cron.php

Acum, în admin/index_for_cron.php, căutați aceste 2 linii și comentați-le care sunt responsabile pentru autentificare și permisiuni.

Acum utilizați această adresă URL pentru jobul dvs. cron.

NOTĂ: este foarte recomandat să schimbați numele de index_for_cron.php într-un nume urât și imprevizibil din motive de securitate.

Sper că acest lucru vă ajută:)

Extensii Cron Jobs, De exemplu, puteți seta un anumit script PHP pentru a fi executat automat în fiecare zi la miezul nopții. Configurare în cPenal. Configurați joburile cron prin cPanel folosind acest Cron joburile sunt foarte utile pentru a vă economisi timp rulând automat sarcinile programate - cum ar fi trimiterea de e-mailuri de pre-vânzare a clienților, cum ar fi Coșurile abandonate automat . Au fost adăugate la Opencart 3.1, dar lipsesc pentru versiunile mai vechi, deci am transformat acest lucru într-un modul care poate fi instalat cu ușurință și compatibil înapoi.

Am făcut ceva similar cu IJas. Adiacent administratorului și catalogului, am creat un nou folder numit „cli”.

Acest folder conține un fișier php pentru o anumită funcție care trebuie efectuată de cli (executarea scripturilor prin crontab într-un program stabilit sau manual în linia de comandă), precum și un „bootstrap” de tipuri pentru aceste tipuri de scripturi. Bootstrap-ul este în esență o copie a „indexului” găsit în catalog sau administrator și include unele verificări și elimină verificarea permisiunii și alte elemente inutile. Apelează orice controler/acțiune este stabilit în scriptul funcției specifice apelului (în exemplul de mai jos, apelează metoda indexului clasei definite în /admin/controller/common/cli_some_function.php).

Script specific funcției:

CLI „Bootstrap”/Dispecer:

Folosind această schemă, mă pot asigura că scriptul nu va fi apelat de pe web și îl pot declanșa automat de pe server însuși folosind un job cron (de exemplu: 0 1 0 0 0/path/to/php/path /to/opencart/cli/cli_some_function.php)

Notă că funcția error_handler folosește câteva opțiuni de configurare care nu sunt out-of-the-box. Puteți fie să le configurați, fie să vă puneți propriul cec acolo.

EDITAȚI | × a făcut unele modificări pentru gestionarea erorilor

Cron Jobs, Lucrările Cron sunt foarte utile pentru a vă economisi timp rulând automat sarcinile programate - cum ar fi trimiterea de e-mailuri de pre-vânzare a clienților, cum ar fi Coșurile abandonate automat. Au fost adăugate la Opencart 3.1, dar lipsesc pentru versiunile mai vechi, așa că am transformat acest lucru într-un modul care poate fi ușor instalat și compatibil înapoi. Cron Ce este un cron? Un cron este un serviciu care permite unui utilizator să execute automat un script la un anumit moment. De exemplu, puteți seta un anumit script PHP pentru a fi executat automat în fiecare zi la miezul nopții. Configurare în cPenal. Configurați lucrări cron prin cPanel folosind această procedură: Conectați-vă la interfața dvs. cPanel. Accesați secțiunea „Avansat”.