i have fixed this and tested on a litespeed live server – visitors working now
Proposed Changelog — Guest Wishlist and LiteSpeed Cache Fix Fixed
- Fixed guest wishlist items being shared between anonymous visitors when LiteSpeed page cache was enabled.
- Fixed cached wishlist HTML displaying products previously added by another visitor.
- Fixed newly added guest wishlist products not appearing on the wishlist page.
- Fixed deleted wishlist products reappearing after refreshing the page.
- Fixed guest wishlist add, remove, check and render operations using inconsistent cookie state.
- Fixed stale guest wishlist cookie values being reused during the same PHP request.
- Fixed guest wishlist AJAX responses being cached by browsers, proxies or optimisation plugins.
- Fixed an HTTP 500 error caused by WooCommerce account and payment gateway functions being initialized during guest AJAX requests.
- Fixed an HTTP 500 error caused by calling
get_permalink() before the WordPress rewrite system was available.
Changed
- Guest wishlists are now loaded through an uncached AJAX fragment instead of being rendered directly into cacheable page HTML.
- Logged-out wishlist pages initially render a neutral loading container with no visitor-specific product data.
- Guest wishlist AJAX requests now include a unique cache-busting value.
- Guest cookie reading was centralized into a single method used by add, remove, lookup and rendering operations.
- Guest cookie updates now synchronize the corresponding
$_COOKIE value immediately.
- Product removal now reloads the authoritative wishlist state instead of only hiding the product row with JavaScript.
- Guest wishlist fragments refresh automatically after adding or removing products.
- Wishlist pages now send private and no-cache response headers.
- Added LiteSpeed-specific no-cache handling for wishlist page requests.
- WooCommerce account-menu generation is skipped during guest wishlist AJAX rendering.
- Automatic LiteSpeed configuration changes were removed.
- Automatic cache purging during WordPress startup was removed.
- Cache purging must now be performed manually through the LiteSpeed Cache Toolbox.
Added
- Added a guest wishlist AJAX endpoint for visitor-specific rendering.
- Added loading and error states for the guest wishlist fragment.
- Added protection against cached guest wishlist responses.
Technical Notes
- Logged-in user wishlists continue using the existing database-backed system.
- The changes primarily affect cookie-based wishlists for anonymous visitors.
- The wishlist page should remain excluded from public full-page caching.
- Existing LiteSpeed cache should be purged once after installing the update.
Validation
- Tested guest wishlist isolation between separate private browser sessions.
- Tested adding products as a logged-out visitor.
- Tested deleting products and refreshing the wishlist page.
- Tested that deleted products do not reappear.
- Tested logged-in wishlist behaviour remains unchanged.
- PHP syntax checks passed.
- JavaScript syntax checks passed.
- Plugin ZIP integrity check passed.
https://thebuzz.co.za/aco-wishlist-for-woocommerce-v1.1.29-litespeed.zip