Cron-Verwaltung: Einrichtung und Hilfe
Schnellstart
- Laden Sie die ZIP-Datei von mprcron über den "Module Manager" hoch und installieren Sie sie.
- Öffnen Sie Cron Manager > Einstellungen > Konfiguration und lassen Sie Cron-Ausführung aktivieren eingeschaltet.
- Wählen Sie Primärer Auslösermodus und speichern Sie die Einstellungen.
- 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.
- Öffnen Sie Module und synchronisieren Sie die installierten Module, deren Aufgaben Sie benötigen.
- Verwenden Sie Ausführen bei einer unbedenklichen Aufgabe und prüfen Sie Logs.
- 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
- Verwenden Sie Ausführen bei einer unbedenklichen Aufgabe. Prüfen Sie Logs auf Status, Kontext, Dauer und Ergebnisvorschau.
- 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.
- 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.
- 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.
- 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
Verwaltungsskripte
Verwaltungslinks unter PrestaShop 1.6
Schlüssel des externen Planers entfernen
Geheimnis einer benutzerdefinierten Aufgabe entfernen
Verbesserte Sicherheit
Aufgabenliste nach unvollständiger Einrichtung
Cron-Ausführungsfehler
Layout der Zeitplanauswahl
Doppelte Trennlinien im Aufgabenformular
Cron-Ausführungsprotokoll wächst unbegrenzt — füllt den Festplattenspeicher
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
Benutzerdefinierte geplante Aufgaben
Zeitplanung und cron-job.org-Integration
Modulupdates mit einem Klick
Ä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.