Campagneblok
Cache-duur en handmatig synchroniseren
Zowel campagnegegevens als de velddefinities van een aanmeldformulier
worden gecachet in een WordPress-transient, zodat geen van beide bij elke
paginaweergave de Laposta API aanroept. Cache-duur staat standaard op
60 minuten en is instelbaar (1–1440 minuten) vanaf Wynko →
Instellingen, of via de omgevingsvariabele WYNKO_CACHE_MINUTES /
wp-config.php-constante. Het laatste vernieuwingstijdstip staat onder
het veld.
Nu synchroniseren wist de cache direct en haalt campagnes opnieuw op bij Laposta, ongeacht de ingestelde duur. Succes of falen verschijnt als adminmelding, en er wordt een regel toegevoegd aan het activiteitenlog — inclusief een notitie wanneer nieuwe campagnes worden gedetecteerd. Vernieuwingen die automatisch gebeuren zodra de cache verloopt worden ook gelogd, aangeduid als “Automatische synchronisatie”, zodat je de twee uit elkaar kunt houden.
Als de gecachete velden van een formulier uit de pas lopen
Wijzigen de velden van een lijst in Laposta tussen twee vernieuwingen in, dan kan een formulier even een verouderde, gecachete kopie vasthouden. Wynko wacht hier niet op het vanzelf verlopen van de cache: de eerste aanmelding die niet aan de gecachete definities voldoet, start direct een resync met Laposta, en de mismatch wordt gelogd. De volgende poging van de bezoeker wordt gevalideerd tegen de actuele definities, zodat een formulier hooguit één mislukte poging uit de pas kan lopen voordat het zichzelf herstelt.
Dat geldt voor een veld dat verplicht wordt of van vorm verandert. Een gloednieuw optioneel veld is anders: een inzending van een formulier dat ervan vóór dateert, valideert nog prima, dus er mislukt niets en niets forceert een resync. Worden je formulierpagina’s ook geserveerd door een cachingplugin of CDN, dan kan die verouderde kopie zichtbaar blijven. Wynko laat hiervoor een stil signaal achter — een notitie in het activiteitenlog dat een aanmelding “carried an outdated field fingerprint”, hooguit eens per uur per formulier — je aanwijzing om die pagina uit de cache te wissen. Zie Paginacaching en CDN’s voor het volledige beeld.
Een paginacache automatisch legen bij een sync
Wynko’s datacache en een cachingplugin zijn losse lagen: na Nu
synchroniseren zijn Wynko’s eigen gegevens direct vers, maar een
frontendpagina die ze toont blijft op de oudere versie tot die
paginacache verloopt of zelf wordt geleegd. Om automatisch te legen kan
een developer wynko_cache_busted of wynko_campaigns_synced haken en
de eigen leegfunctie van de cachingplugin aanroepen — zie
Hooks en filters.