Hello,
We've been fighting a recurring issue for weeks and would appreciate your help, because the current workarounds are not acceptable long-term.
Environment
EventON 5.0.13 + addons: Tickets, Ticket Variations & Options, Event Lists, Full Cal, Yearly View
WordPress with Uncode theme 2.12.6, WPML, WooCommerce
Hosting: SiteGround with full-page caching (Dynamic Cache + Speed Optimizer plugin)
Site: https://barreaudelongueuil.qc.ca — calendar on /activites/ and an Event List on the homepage
The problem
EventON embeds its AJAX nonces (evo_general_params.n and .nonce) in the page HTML. On any site with full-page caching, cached pages older than the WordPress nonce lifetime (12–24h) serve expired nonces to every visitor. Every calendar AJAX call to /?evo-ajax=eventon_get_events then returns:
{"status":"bad","msg":"Validation failed"}
…and the calendar hangs on the loading animation forever. This affects every visitor until the cache is manually purged, then breaks again ~24h later. This makes EventON effectively incompatible with page caching — i.e., with most production WordPress sites.
Everything we have tried
- Excluded /activites/* (URL) and the ajde_events post type from server caching. This works for those pages, but forces us to sacrifice caching, and does NOT protect other pages embedding Event List shortcodes (e.g., our homepage — we cannot reasonably exclude the homepage from caching).
- Scheduled a full cache purge every 12h via a custom snippet (wp_schedule_event → sg_cachepress_purge_cache()), so cached nonces never outlive their validity. This worked but is a hack that defeats the purpose of caching, and we have since removed it.
- Enabled "Disable nonce verification for calendar loading" (Settings → Advanced Settings) in v5.0.13, and clicked "Save Changes". This setting appears to have no effect. We verified by sending a deliberately invalid nonce to /?evo-ajax=eventon_get_events — the server still responds {"status":"bad","msg":"Validation failed"}. Note: "HTTP communication method" is set to Endpoint.
Questions
- Is "Disable nonce verification for calendar loading" supposed to cover the eventon_get_events endpoint? If yes, why would verification still be enforced after enabling and saving? Is there a dependency on the HTTP communication method (Endpoint vs admin-ajax vs REST)?
- What is your officially recommended configuration for sites behind full-page caching?
- If there is no working option today, please treat this as a feature request: fetch a fresh nonce via a small AJAX call at page load, or exempt the public, read-only eventon_get_events data from nonce validation. Event data is public — a stale-nonce hard failure that blanks the calendar for all visitors is a worse outcome than any theoretical risk on a read-only endpoint.
To reproduce on your end: cache any page containing a calendar, wait 24+ hours without purging (or simply send an altered nonce parameter to /?evo-ajax=eventon_get_events), and observe the "Validation failed" response and the permanently-loading calendar.
Thank you — happy to provide temporary admin access or run any diagnostic you need.
- Aug 26,2026 AT 11:02AM - 4 hours ago