RECOMMENDED JS SOLUTIONS WE DID NOT USE
We hears of a JS addon named OverlappingMarkerSpiderfier. This product moves the map icons slightly away from each other. This makes them visible and hence able to be clicked. This arguably fixes the solution; however, our clients demand more
In reality, we needed a solution that allowed the end user to clearly see that there were multiple listings associated with a location. We needed this to be easily recognizable my the majority of end users. From industry standards, we believed that end users should be able to scroll though related locations.
OUR PHP PROGRAMMATIC SOLUTION
Soon we realized that the issue was a PHP level solution. That is to say, we needed to apply logic to the markers so that they showed what we needed. That’s opposed to having the markers somehow smart enough to figure out that they share the same lat/lon
To do this, we made a 2 fold move. At one end, we limited the zoom level for the clustering feature. So at some zoom level, the markers stop being clustered. This reveals a single marker. Its actually the last marker to be added at that latitude and longitude. All other markers are there too but they are behind the last one making them impossible to click
Our logical fix, was to search for all other markers with the same lat/lon every time we build an info window. This approach as an algorithm would obviously degrade over a large number; however, our customers will rarely show more than 25 items on the map at the same time
Many solutions to this issue seem to focus on the JS figuring out the logic for what to showcase when markers have the same location. In reality, we think that decision making should happen on the server, allowing the js to focus on layout. Our approach defies typical solutions by focusing on the end user.