Cron-Verwaltung: Einrichtung und Hilfe

Schnellstart

  1. Laden Sie die ZIP-Datei von mprcron über den "Module Manager" hoch und installieren Sie sie.
  2. Öffnen Sie Cron Manager > Einstellungen > Konfiguration und lassen Sie Cron-Ausführung aktivieren eingeschaltet.
  3. Wählen Sie Primärer Auslösermodus und speichern Sie die Einstellungen.
  4. Kopieren Sie Server-Cron-Befehl oder HTTP-Cron-URL und richten Sie den entsprechenden Scheduler ein; speichern Sie für cron-job.org den API-Schlüssel und erstellen oder synchronisieren Sie den Auftrag.
  5. Öffnen Sie Module und synchronisieren Sie die installierten Module, deren Aufgaben Sie benötigen.
  6. Verwenden Sie Ausführen bei einer unbedenklichen Aufgabe und prüfen Sie Logs.
  7. Warten Sie auf den geplanten Auslöser und bestätigen Sie dann einen Zugriff unter Zugriffe sowie aktualisierte Werte für Letzte Ausführung und Nächste Ausführung unter Aufgaben.

Erfordert PrestaShop 1.6.1 oder neuer und PHP 7.1 oder neuer.

Einrichtungsanleitung

Installieren und einen Auslöser wählen

Öffnen Sie in Ihrem Back Office Module > "Module Manager", wählen Sie "Upload a module" und laden Sie die ZIP-Datei des Moduls hoch. Installieren Sie es und klicken Sie dann auf "Configure". Verwenden Sie bei älteren PrestaShop-Versionen die entsprechende Modulseite.

Öffnen Sie Cron Manager > Einstellungen > Konfiguration. Verwenden Sie Server-Cron (empfohlen), wenn Ihr Hosting geplante PHP-Befehle unterstützt. Verwenden Sie cron-job.org oder einen anderen externen HTTP-Scheduler, wenn Sie einen entfernten Auslöser benötigen. Front-Office-Fallback und Back-Office-Fallback benötigen Seitenaufrufe. Sie gewährleisten keine feste Ausführungszeit.

Installieren Sie die MPR-Module, deren Aufgaben Sie ausführen möchten. Öffnen Sie Module in Cron Manager und synchronisieren Sie deren Definitionen. Ein zentraler Auslöser verteilt die fälligen registrierten Aufgaben. Er erkennt keine beliebigen Skripte als Aufgaben.

Ausführung konfigurieren

Einstellung Anfangswert Ihre Aktion
Cron-Ausführung aktivieren Ja Lassen Sie diese Option eingeschaltet, um fällige Aufgaben über authentifizierte Cron-Aufrufe auszuführen. Beim Ausschalten bleiben die Registrierungen erhalten. Aufrufe melden null Aufgaben.
Primärer Auslösermodus Server-Cron Wählen Sie den Auslöser, den Sie tatsächlich einrichten werden.
cron-job.org-API-Schlüssel Leer Geben Sie Ihren API-Schlüssel für den integrierten externen Scheduler ein. Ein leeres Geheimnisfeld behält den gespeicherten Schlüssel bei. Entfernen Sie ihn über die zugehörigen Steuerelemente zum Leeren oder Trennen.
cron-job.org-Intervall Stündlich Wählen Sie stündlich, alle 30, 15, 5 Minuten oder jede Minute. Dies ist das Auslöserintervall. Jede Aufgabe behält ihren eigenen Zeitplan.

Kopieren Sie unter Cron-Endpunkte den Server-Cron-Befehl, die HTTP-Cron-URL oder den Wert unter Gemeinsames Cron-Token. Das Token wird als 64 hexadezimale Zeichen generiert. Eine Neugenerierung macht Ihre alten Befehle und URLs ungültig. Aktualisieren Sie danach jeden Scheduler.

Server-Cron

Der generierte Kopierbefehl verwendet --token=TOKEN, was der aktuelle Runner akzeptiert. Bei einer Servereinrichtung können Sie das Token stattdessen in die erste Zeile einer Datei außerhalb des öffentlichen Webverzeichnisses schreiben. Gewähren Sie nur dem Benutzer für die geplante PHP-Ausführung Lesezugriff, beispielsweise mit dem Dateimodus 0400. Verwenden Sie zu Ihrem Hosting passende absolute Pfade:

* * * * * /usr/bin/php /path/to/prestashop/modules/mprcron/cron.php --token-file=/private/mprcron.token --max-tasks=20 --max-seconds=300 --context=cron

Übernehmen Sie diese Beispielpfade nicht wörtlich. Die ausführbare PHP-CLI-Datei muss Ihren Shop und dessen Abhängigkeiten laden können. Für Befehlsaufgaben muss der Server außerdem die Ausführung von Prozessen erlauben.

HTTP-Scheduler

Kopieren Sie die vom Shop generierte HTTP-Cron-URL. Ihr Format lautet:

https://yourshop.com/module/mprcron/cron?token=YOUR_TOKEN
https://yourshop.com/module/mprcron/cron?token=YOUR_TOKEN&max_tasks=20&max_seconds=300

Speichern Sie für cron-job.org Ihren Schlüssel und das Intervall und verwenden Sie dann das Steuerelement zum Erstellen oder Synchronisieren des Auftrags. Prüfen Sie mit Öffentliche Anfrage testen die Erreichbarkeit. Auf diesem Bildschirm können Sie den externen Auftrag pausieren, fortsetzen, löschen oder trennen. Authentifizierungssperren, Wartungseinschränkungen und Firewalls können entfernte Anfragen blockieren.

Grenzen und Kontext

Ein Runner-Aufruf verwendet standardmäßig 20 Aufgaben und 300 Sekunden. Die Grenzen werden auf 1 bis 100 Aufgaben und 10 bis 300 Sekunden begrenzt. Dies sind Aufrufparameter, keine Felder im Konfigurationsformular. Die CLI akzeptiert --max-tasks, --max-seconds und --context=cron|front|admin. Der Front-Controller-Endpunkt des Moduls führt im Kontext cron aus. Erwarten Sie nicht, dass dessen Query-String diesen Kontext ändert.

Aufgaben und Module verwalten

Verwenden Sie Übersicht für eine Zusammenfassung. Aufgaben zeigt das besitzende Modul, den Aufgabenschlüssel, die Bezeichnung, den Typ, den Zeitplan, den Aktivierungsstatus, den Kontext, die Priorität, das Zeitlimit sowie die letzte und nächste Ausführung. Verwenden Sie Ausführen für eine sofortige Ausführung. Ändern Sie eine einzelne Aufgabe über Pausieren oder Fortsetzen. Bearbeiten Sie eine vom Modul definierte Häufigkeit und setzen Sie sie bei Bedarf auf den Modulstandard zurück.

Verwenden Sie Module, um Definitionen zu synchronisieren, die Aufgaben eines Moduls zu pausieren oder fortzusetzen oder Registrierungen zu entfernen. Eine entfernte, vom Modul definierte Registrierung kann durch Synchronisierung des besitzenden Moduls wiederhergestellt werden. Das Entfernen einer benutzerdefinierten Aufgabe löscht deren benutzerdefinierte Definition.

Eine benutzerdefinierte Aufgabe erstellen

Ihr Mitarbeiterprofil benötigt die zur jeweiligen Aktion passenden Rechte zum Anzeigen, Hinzufügen, Bearbeiten oder Löschen von Aufgaben.

Öffnen Sie das Formular für benutzerdefinierte Aufgaben unter Aufgaben.

Feld Standard Verwendung
Name Leer Geben Sie eine aussagekräftige Bezeichnung ein.
Typ URL Wählen Sie URL, PHP-Callback oder CLI-Befehl.
Zeitplan hourly:00 Geben Sie einen unterstützten Zeitplan ein.
Besitzendes Modul mprcron Wählen Sie das installierte Modul, das für die Aufgabe verantwortlich ist.
Aktiviert Ja Deaktivieren Sie die Aufgabe während der Vorbereitung, wenn sie noch nicht geplant ausgeführt werden soll.
Priorität 50 Niedrigere Zahlen werden zuerst ausgeführt.
Zeitüberschreitung 55 Sekunden Gespeicherte Werte betragen mindestens 10 Sekunden.
URL Leer Geben Sie für eine URL-Aufgabe ein HTTP- oder HTTPS-Ziel ein.
Secret-Token Leer Optionales Bearer-Token. Es wird hinzugefügt, sofern Ihre Header nicht bereits Authorization enthalten.
Methode GET GET, POST, PUT, PATCH oder DELETE.
Erwarteter HTTP-Status 200 Verwenden Sie den erforderlichen Status oder 0, um jede 2xx- oder 3xx-Antwort zu akzeptieren.
Header Leer Geben Sie pro Zeile einen HTTP-Header ein.
Body Leer Anfrageinhalt für POST, PUT oder PATCH.
Callable Leer PHP-Callback wie ClassName::method oder module_name::method.
Befehl Leer Shell-Befehl für den CLI-Runner des Servers oder einen ausdrücklichen Back-Office-Test.

Verwenden Sie Testlauf oder Speichern und testen und prüfen Sie das Ergebnis. Ein HTTP-Scheduler oder ein Fallback-Seitenaufruf führt keine Befehlsaufgaben aus. Die Aktion Ausführen unter Aufgaben verwendet den ausdrücklichen Admin-Testkontext.

Zeitpläne

hourly:00
daily:04:00
weekly:1:08:00
weekly:1,3:08:00
every:3600
*/15 * * * *
0 3 * * *
30 2 * * 1

Bei wöchentlichen Zeitplänen ist Tag 0 Sonntag und Tag 1 Montag. every:3600 verwendet Sekunden. Kalenderbasierte Zeitpläne verwenden die Zeitzone der PHP-Laufzeit. Vergleichen Sie diese mit den in der Aufgabenliste angezeigten Zeiten.

Geben Sie für einen Lieferantenimport Name Nightly supplier import, Typ URL, Methode POST, Zeitplan daily:02:30 sowie die URL des Lieferanten ein. Setzen Sie Erwarteter HTTP-Status auf 200. Fügen Sie Content-Type: application/json zu Header und diesen Inhalt zu Body hinzu:

{"source":"prestashop","mode":"scheduled"}

Verwenden Sie für einen Callable module_name::method. Verwenden Sie für einen Befehl einen absoluten Befehl wie php /path/to/script.php.

Ausführung prüfen und Fehler beheben

  1. Verwenden Sie Ausführen bei einer unbedenklichen Aufgabe. Prüfen Sie Logs auf Status, Kontext, Dauer und Ergebnisvorschau.
  2. Warten Sie auf den nächsten Auslöser Ihres Schedulers. Prüfen Sie unter Zugriffe einen Server- oder externen Zugriff und anschließend Letzte Ausführung und Nächste Ausführung der Aufgabe.
  3. Wenn Zugriffe ohne Ausführungen eingehen, prüfen Sie Cron-Ausführung aktivieren, den Aktivierungsstatus, den Zeitplan und den Kontext der Aufgabe. Eine von einem anderen Runner beanspruchte Aufgabe wird übersprungen.
  4. Wenn keine Zugriffe eingehen, prüfen Sie Scheduler-Pfad, Token und öffentliche Erreichbarkeit. Eine manuelle Ausführung testet nur die Aufgabe selbst; der Scheduler Ihres Hostings muss die URL trotzdem aufrufen.
  5. Prüfen Sie bei fehlgeschlagenen, zeitüberschrittenen oder abgestürzten Ergebnissen das Ergebnis und das Zielskript. Fehlgeschlagene Ausführungen verschieben ihre nächste Ausführung um eine Wiederholungsverzögerung. Wenn verfügbar, wird die CLI-Unterprozessisolierung verwendet, damit eine abgestürzte Aufgabe nicht den gesamten Stapel stoppen muss.

Authentifizierte Diagnose-URLs verwenden denselben Endpunkt:

?token=YOUR_TOKEN&action=status
?token=YOUR_TOKEN&action=health
?token=YOUR_TOKEN&action=tasks
?token=YOUR_TOKEN&action=tasks&module=mprcron
?token=YOUR_TOKEN&action=run&id_task=123

Zugriffe unterscheidet Server-, externe, Front-Office-, Back-Office-, Fallback- und manuelle Auslöser. Logs zeichnet Ausführungen auf. Verwenden Sie Einstellungen > Integrität für Installationsprüfungen. Lizenz, Support und Aktualisieren befinden sich ebenfalls unter Einstellungen.

Aufgaben aus einem Modul registrieren

Wenn Sie ein MPR-Modul pflegen, verwenden Sie das mitgelieferte MyPrestaRocks\Cron\CronTrait, deklarieren Sie Aufgaben in getCronTasks() und rufen Sie dessen Cron-Installations- und Deinstallationsmethoden im Lebenszyklus Ihres Moduls auf. Eine Aufgabendefinition kann Folgendes enthalten:

'refresh_feed' => [
    'label' => 'Refresh product feed',
    'callable' => 'mymodule::cronRefreshFeed',
    'schedule' => 'daily:03:00',
    'context' => 'cron',
    'priority' => 50,
    'timeout' => 120,
]

Synchronisieren Sie nach Änderungen an Definitionen das besitzende Modul unter Module.

Deaktivieren oder deinstallieren

Schalten Sie Cron-Ausführung aktivieren für einen vorübergehenden Stopp aus und prüfen Sie Ihren externen Scheduler separat. Entfernen Sie den Cron-Eintrag des Hostings oder pausieren/löschen Sie den externen Auftrag, wenn Sie das Modul außer Betrieb nehmen. Deinstallieren Sie es über den "Module Manager". Die Deinstallationsroutine deregistriert die eigenen Aufgaben von Cron Manager und entfernt dessen Menü. Sie behält die gemeinsam genutzten Cron-Tabellen bei, da andere Module sie weiterhin verwenden können.

Kompatibilität

Erfordert PrestaShop 1.6.1 oder neuer und PHP 7.1 oder neuer.

Fragen

Noch keine Fragen zu diesem Modul

Fragen Sie alles zu Installation, Kompatibilität oder Einrichtung. Die Antworten erscheinen hier.

Bekannte Probleme

11

Speichern und bleiben

GelöstAktualisiert:
Behoben in: 1.3.17
„Speichern und bleiben“ korrigiert, sodass Aufgabenänderungen wie mit „Speichern“ gespeichert werden.

Verwaltungsskripte

GelöstAktualisiert:
Behoben in: 1.3.17
Skripte der Aufgabenverwaltung wiederhergestellt, damit interaktive Bedienelemente korrekt geladen werden.

Verwaltungslinks unter PrestaShop 1.6

GelöstAktualisiert:
Behoben in: 1.3.17
Verlust von Aktionsparametern in Verwaltungslinks unter PrestaShop 1.6 behoben.

Schlüssel des externen Planers entfernen

GelöstAktualisiert:
Behoben in: 1.3.17
Beim Entfernen des gespeicherten cron-job.org-Schlüssels bleiben Aufgabenverweise nun erhalten und die tatsächlich verwendete Ersatzplanung wird angezeigt.

Geheimnis einer benutzerdefinierten Aufgabe entfernen

GelöstAktualisiert:
Behoben in: 1.3.17
Das Entfernen eines gespeicherten Geheimnisses einer benutzerdefinierten Aufgabe löscht nun tatsächlich den gespeicherten Wert.

Verbesserte Sicherheit

GelöstAktualisiert:
Behoben in: 1.3.14
Verbesserte Sicherheit.

Aufgabenliste nach unvollständiger Einrichtung

GelöstAktualisiert:
Behoben in: 1.3.11
Fehler der Aufgabenliste bei fehlendem erforderlichem Aufgabenspeicher behoben.

Cron-Ausführungsfehler

GelöstAktualisiert:
Behoben in: 1.3.11
Fehler bei der geplanten Ausführung durch einen Konflikt mit dem Shop-Kontext behoben.

Layout der Zeitplanauswahl

GelöstAktualisiert:
Behoben in: 1.3.11
Layout der Zeitplanauswahl in den Aufgabeneditoren korrigiert.

Doppelte Trennlinien im Aufgabenformular

GelöstAktualisiert:
Behoben in: 1.3.11
Doppelte Trennlinien aus dem Formular für benutzerdefinierte Aufgaben entfernt.

Cron-Ausführungsprotokoll wächst unbegrenzt — füllt den Festplattenspeicher

GelöstAktualisiert:
Behoben in: 1.3.13

Jede Cron-Ausführung protokolliert Startzeit, Endzeit und Ausgabe ohne jegliche Rotation. Nach Monaten des Betriebs überschreitet die Log-Tabelle in aktiven Shops 1GB.

Hinweis zur Lösung

Automatische Log-Rotation mit konfigurierbarer Aufbewahrungsdauer hinzugefügt (Standard: 30 Tage). Alte Einträge werden bei jedem Cron-Lauf bereinigt.

Funktionsanfragen

4

Implementiert

Eigene Cronjobs im Backoffice verwalten

Implementiert
Im Backoffice lassen sich URL-Aufgaben, PHP-Callables und Befehle erstellen, bearbeiten und planen. Befehle laufen über den Server-Cron oder ausdrückliche Administratortests und werden bei externen HTTP-Aufrufen übersprungen.

Benutzerdefinierte geplante Aufgaben

Implementiert
Erstellen und verwalten Sie benutzerdefinierte geplante Aufgaben im Backoffice.

Zeitplanung und cron-job.org-Integration

Implementiert
Wählen Sie Cron-Auslösemodi und verbinden Sie cron-job.org für eine externe Zeitplanung.

Modulupdates mit einem Klick

Implementiert
Installieren Sie Modulupdates direkt im Backoffice.

Änderungsprotokoll

v1.3.122026-09-25

  • AddedAdd custom cron task management
  • AddedRelease cron manager 1.2.0
  • Addedself-healing infrastructure with automatic diagnostics and repair
  • Addedcomplete FR/DE/ES/IT/PL translations
  • ImprovedUse shared admin form panel for cron tasks
  • FixedSync install integrity success handling
  • FixedRelease cron install integrity scope
  • FixedPrepare cron manager release
  • FixedRemove duplicate custom task form dividers
Ältere Versionen

v1.3.92026-09-10

  • Synced the install-integrity success handling from the shared package into the customer artifact.
  • Addedthe 1.3.8 to 1.3.9 upgrade finalizer so the install-integrity snapshot refreshes cleanly.

v1.3.82026-09-04

  • Separated post-install infrastructure checks from runtime monitoring so fresh installs do not fail because of old cron history.
  • Reset stale monitoring and cron-job.org reachability state on fresh install, and clear obsolete reachability markers during upgrade.
  • Fixedserver-cron configuration status so cron-job.org reachability is shown as not required instead of a blocking alert.
  • Added1.3.7 to 1.3.8 upgrade finalization for notifier hooks and install integrity.

v1.3.72026-08-25

  • Synced bundled MPR shared packages with current package sources.
  • Addedlazy first-visit install integrity banner wiring for new installs and upgrades.
  • Addedupgrade finalization for existing installs so standard admin tabs, hooks, schema, and integrity state are refreshed.
  • Improvedconfiguration form targeting and save behavior across PrestaShop 1.7, 8, and 9.

v1.3.62026-06-16

  • Addeda full custom cron task editor for URL, PHP callback, and CLI command executors.
  • Addeddirect five-field cron expression input with live schedule preview for existing expressions.
  • AddedAJAX test runs from the task header with inline response output and toast/alert feedback.
  • Addedcron-job.org integration support for external trigger setup and synchronization.
  • Improvedadvanced option and dependent-field behavior in the shared admin form UI.

v1.2.02026-05-05

  • AddedCron trigger modes + cron-job.org integration
  • Addedadmin menu management via MenuInstaller for streamlined module setup
  • Addedself-healing integrity checks for automatic diagnostics and repair
  • AddedLicense management tab with key management and renewal options
  • Addedcomplete FR/DE/ES/IT/PL translations

v1.1.02026-02-18

  • AddedPrestaShop 9 and Hummingbird theme compatibility
  • Addedtask execution history chart showing success and failure rates over the last 30 days
  • Improvedlog rotation to compress archived log files instead of deleting them outright
  • Fixedpseudo-cron fallback not triggering when all page visits are served through Varnish cache
  • Addedemail alert when a scheduled task fails more than a configurable consecutive number of times

v1.0.02025-05-30

  • Initialrelease of MPR Cron Manager
  • InitialCentral dashboard listing all registered cron tasks across installed MPR modules
  • InitialSingle system cron entry replaces per-module cron setup for simpler server configuration
  • InitialPseudo-cron fallback executes overdue tasks on front-end page visits when no system cron exists
  • InitialPer-task execution log with last run timestamp, duration, and exit status
  • InitialLog rotation with configurable retention period in days

Demo

Testen Sie das vollständige Modul

  • Fertiger Demo-Shop Entdecken Sie einen fertigen Demo-Shop im Browser.
  • Ohne Registrierung Kein Konto, keine E-Mail-Adresse und keine Shop-Domain nötig.

Mit dem Öffnen dieser Demo akzeptieren Sie die Demo-Nutzungsbedingungen und die Datenschutzerklärung.

Lade ...
Nach oben