Over the many years writing map code I've devised a variety of ways to achieve this, most of them convoluted, involving PHP modules and MySQL databases.
My new app OMJRoute has now achieved a wonderful level of simplicity. The program reads a basic CSV (Comma Separated Value) file using some sweet JQuery asynchronous code, converts it to an Object, then into a GeoJson entity, and then places it on the map as a Layer.
The file format is simple and efficient: Longitude,Latitude,Name. For example, here's three Walmart stores with store number as the Name:
The file contains 4,339 entries for the US and is 113 KB in size, so it loads really quick.
You still with me? This allows me to create some cool layers on top of my Route Map showing things like Rest Areas and Flying J/Pilot fuel stations. The points are clustered so the further you zoom in, the more are displayed.
My ultimate goal is to apply the Places only to the Route. If it ain't along the way, you ain't gona see it, because it doesn't matter. I create this stuff to help me travel, and hopefully others...