Warenwirtschaft: AP-38 — Status-Cron selbstheilend einplanen (Ursache Ampel-Bug)
Shopseitige Diagnose (SSH, 28.08.): der Hook partnercenter_api_fetch_orders_status war in WP-Cron GAR NICHT eingeplant (grep leer), obwohl WP-Cron läuft (System-Cron trifft wp-cron.php alle 5 Min, DISABLE_WP_CRON=1 korrekt kompensiert). Damit pollte nichts /api/wp/status → jede abgeschlossene Bestellung blieb auf 'open' = orange. Ursache: Der Event wurde nur im register_activation_hook eingeplant und im Deaktivierungs-Hook gelöscht. Ein In-Place-Update (ohne Reaktivierung) ließ ihn dauerhaft verschwinden. Fix (Connector v1.6.0): partnercenter_api_ensure_cron() auf 'init' — plant den stündlichen Event nach, falls er fehlt (wp_next_scheduled-Guard). Selbstheilend, übersteht künftige Updates. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
0c8d321f66
commit
b6ca33288c
1 changed files with 20 additions and 0 deletions
|
|
@ -42,6 +42,26 @@ function partnercenter_api_activate()
|
|||
}
|
||||
register_activation_hook(__FILE__, 'partnercenter_api_activate');
|
||||
|
||||
/**
|
||||
* AP-38: Selbstheilung des Status-Cron.
|
||||
*
|
||||
* Der stündliche Status-Abgleich wurde bisher NUR bei der Plugin-Aktivierung
|
||||
* eingeplant. Nach einem In-Place-Update (ohne echte Deaktivierung + Reaktivierung)
|
||||
* fehlte der Event dauerhaft — es lief keine Statusabfrage mehr, und die Ampel
|
||||
* blieb bei abgeschlossenen Bestellungen orange. Hier bei jedem Request prüfen und
|
||||
* bei Bedarf nachplanen (wp_next_scheduled ist billig, wp_schedule_event feuert nur,
|
||||
* wenn der Event fehlt).
|
||||
*
|
||||
* @since 1.6.0
|
||||
*/
|
||||
function partnercenter_api_ensure_cron()
|
||||
{
|
||||
if (! wp_next_scheduled('partnercenter_api_fetch_orders_status')) {
|
||||
wp_schedule_event(time(), 'hourly', 'partnercenter_api_fetch_orders_status');
|
||||
}
|
||||
}
|
||||
add_action('init', 'partnercenter_api_ensure_cron');
|
||||
|
||||
/**
|
||||
* Function to run after plugin deactivation
|
||||
*
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue