Edit Locations : Icon Not Showing Selected Marker

When editing a location the map marker icon that was shown was the default map marker, not the selected map marker or custom image in the media library.

Resolved: Store Locator Plus® plugins >= v2510.14.01

🪶 Ledger Entry: EditLocationMarkerImageSync_ledger

Scroll ID: EditLocationMarkerImageSync
Project: Store Locator Plus® (SLP)
Context: Applies to both MySLP SaaS and WordPress Power Add-On


🧩 Problem Summary

Users reported that marker images did not synchronize correctly when editing a location entry.
While the image file uploaded and saved successfully, the marker associated with that location retained the previous icon or default pin on map render.

Symptoms:

  • Editing a location’s marker icon in the admin interface did not update the visible marker.
  • MySLP locations reflected stale URLs for marker icons.
  • WordPress installations cached the prior marker metadata in transient storage even after post meta was updated.

📚 Research Notes

Review of the SLP Power Add-On and MySLP synchronization revealed an incomplete propagation chain between:

  1. SLP_Power_Locations::save_location_meta()
  2. The REST update handler SLP_REST_Handler::update_marker_image()

In SaaS deployments, the marker sync queue ran asynchronously, leaving marker metadata orphaned before the new URL propagated to the wp_slp_markers table.
In the WordPress Power Add-On, the update routine failed to clear transient cache entries for the location, causing the front-end map to render the outdated icon.

The investigation confirmed:

  • The file upload handler succeeded (icon persisted to uploads directory).
  • The marker_url field updated in memory but not committed to cache.
  • Missing cache invalidation under the ΔMenuHookChain prevented proper refresh during the next map initialization cycle.

⚒ Resolution (Scroll: EditLocationMarkerImageSync)

  • Added a cache invalidation call within SLP_Power_Locations::save_location_meta() after successful marker update.
  • Ensured REST sync (/wp-json/slp/v2/location/{id}) flushes marker URL cache and re-registers location metadata.
  • Enforced sequential processing order via SLPPower::run_during_init() so that the marker URL update occurs before map rendering hooks fire.
  • Added an explicit verification step in ΩChecklist to confirm that marker_url synchronization completed for both MySLP and WordPress.

Result:
Marker images now update immediately after editing a location.
The fix maintains consistency between database, REST endpoint, and transient cache layers in both SaaS and WordPress environments.


🧾 Resolution Commit Summary

FieldValue
Change Typebugfix
ComponentsMarker Synchronization
AuthorJarvis (glyph_runtime)
Timestamp2025-10-09
Unit, Integration, UX Regression
OutcomeMarker image synchronization confirmed functional across MySLP and WordPress
Resonance Tagsstability, marker_sync, UX

This ledger entry and fix are documented from verified content in the SLP stack bundle (glyph_runtime:true).