Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I'm working on a proof of concept alumni site with a WordPress backend. I want to have a very simple map that shows where alumni are living. I'm thinking something like the Bing API or a simple open source solution - points on a map right now. Not sure yet how I will be getting locations, perhaps a user submission system somehow. Any ideas on good, solid, simple ways to accomplish something like this? I'm on a LAMP stack hosted with WebFaction, and I know just enough PHP to be dangerous.

EDIT: Here's what I ended up with. Jlivni got me looking the Google route and some hacking on this method gave me this: alt text

It's powered on the back end by a publicly viewable Google Spreadsheet. Pretty easy to implement and hack up. And I can pass of the editing of the spreadsheet to just about anyone and they can carry out that task.

share|improve this question
1  
Chad, it looks good. An enhancement would be hooking this up to the MarkerClusterer to make things clearer where the points overlap. You'd feed the cm_mapMarkers array to the MarkerClusterer using something like var markerClusterer = new MarkerClusterer(cm_map,cm_mapMarkers, mcOptions); –  Stephen Lead Sep 26 '11 at 23:03
add comment

4 Answers

up vote 8 down vote accepted

It sounds like you have a few different things you need to do:

  • Geocode your user locations (e.g. from an address / postal code)
  • Store the locations/attributes somewhere
  • Render them on a map

You can choose to do some or all of this using open source or other alternatives. If it were me, I would probably use some of Google's mapping stack (disclaimer, I work there).

Specifically, I would insert the data into Fusion Tables using their API. To have your Wordpress site automatically insert data there, you will need to authenticate using something like OAuth, perhaps using a library like this one and write some code to insert/update the data when the user changes it in Wordpress.

Now the hard part is over: With your user data (including a single address column) in Fusion Tables you can very easily embed a map showing all of your users by going to your table at google.com/fusiontables, clicking Visualize -> Map, zooming to your area of interest, and selecting the embed code that you can put into your site.

share|improve this answer
1  
+1 For ur needs, this answer is perfect. Nothin to install, and will work well in Wordpress.org templates. That is, if the website is going to be public facing, to avoid violating either bing or Googles licensing... –  Simon Oct 22 '10 at 10:05
add comment

I like jilivni answer the most (so far). I have yet to mess about with Fusion, and seems like a good choice for your needs. However, you mention a LAMP, stack, so storing the data in MySQL could be a good option.

Check this tutorial on how to use PHP to show MySQL data (your table of users/locations) on top of Google Maps.

In terms of gathering the initial data, you could also expand the web app, to allow users to fill in a form and then click on the map to create their own records in the MySQL Db (or Fusion table), but personally, I would gather this info through other means, like a blanket email to your users with a couple of basic questions. That way you can Q&A it before throwing it into the MySQL/Fusion backend.

alt text

share|improve this answer
add comment

most simple that you can get 100% participation on is to collect zip code (I am assuming US locations) with the zip you can do a geocode to show the locations and you might aven show aggregate count as popup value. you can probably do most of this in bing or google api.

share|improve this answer
    
Actually locations could very well be outside of the U.S. –  Chad Cooper Oct 21 '10 at 19:06
add comment

If you're willing to use Visual Studio this, http://code.google.com/p/gmaps-api-net/, does most of what you want, if your site will be available to the public. If your site will be behind a paywall, then this is too pricey.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.