I'm working on Wordpress directory site and I'm utilizing Google Maps plugin that came bundled with the theme I've purchased.
There are 3 types of maps showing on the site:
- Full page map
- Front page map
- Category map
Each of those map widget is running it's own php script as each of them is showing different output.
-Full page map is displaying all listings on the websites, regardless of category and location.
- Front page map widget is showing listings based on user location (listings around user)
- Category map widget is showing filtered map based on user search/filter queries
It's all working fine with a smaller amount of listings. But I have 230.000 markers to display on "full map", which is not working. It crashes admin-ajax instantly saying there is insufficient memory.
Other 2 map widgets are working, but quite slow. Not user friendly. (Those two widgets are not showing all listings at once. Front page widget is showing only listings from the selected city. It can be only 1 marker and up to 300 map markers. Same goes for the category map)
Site is running on cloud server with 3GB RAM and 2 cores CPUs (which can be improved if needed to 6GB with 6 cores CPUs), and PHP memory is set to 1GB. Database key buffer size is set to 512MB.
I did some debugging with PHP Storm and noticed that the scripts running the maps are not written very well. Developers didn't take into consideration that someone might use 230.000 map markers.
- Queries should be rechecked to see if there is a room for performance improvements.
- Info windows should be made to load on click. Currently, the script is loading 230.000 info windows at once
In general, all map widgets should load under 3 seconds.
I was considering using Fusion Tables, but I don't know if they could be integrated well to work with the rest of the theme functionalities, as everything is based around maps and listings.
Please add "I can do this" at the first line of your proposal so I could know you have read the entire job post.
Also, if you have any other recommendations to make the maps work fast without interfering theme functionalities, I'll be happy to consider it and use it.
I estimate a few hours of work here for someone who has experience with this kind of jobs.
Please quote your price based on your estimations. I'll provide more details to the freelancer with most experience and reasonable quote.
Thank you for reading and looking forward to hear from you.