3

we need to create a web page which shows a Google Map of an area, having pins of all contacts in that area.

  1. is there an extension that could manage the dataset creation?

  2. If not, what are the SQL tables and fields we need to consider to create it?

TIA

3 Answers 3

3

This should be possible out of the box. CiviCRM has mapping capabilities documented here https://docs.civicrm.org/user/en/latest/initial-set-up/mapping/

There is an extension using open source v google mapping if you want: https://github.com/eileenmcnaughton/org.wikimedia.geocoder

Once you have your mapping working, then you should be able to do a Search and use the Action 'Map Contacts' (or something similar)

For Drupal you can also use Views and Leaflet which may give you more options

Hope above helps

And as Demerit mentions (just to try and get all the good bits in one answer) - Go to Search - Custom Search - Proximity Search, then from the results action dropdown choose map contacts

2

Go to Search - Custom Search - Proximity Search, then from the results action dropdown choose map contacts.

5
  • 1
    You snuck in while i was off making tea!
    – petednz - fuzion
    Commented Apr 1, 2020 at 19:25
  • 2
    but you do need a provider before above works
    – petednz - fuzion
    Commented Apr 1, 2020 at 19:25
  • Tea is important. Unlike me you have your priorities straight.
    – Demerit
    Commented Apr 1, 2020 at 19:31
  • I drank my tea then stole your thunder (pasted your answer in to mine) shame on me :-)
    – petednz - fuzion
    Commented Apr 1, 2020 at 23:14
  • Ok, no worries!
    – Demerit
    Commented Apr 1, 2020 at 23:40
2

For Wordpress, you can create a regular or smart group and use CiviCRM Directory to display those records in a directory.

It's basic alpha stage plugin so it depends on how much functionality you need. It will display all the core fields correctly. For custom fields it has an issue with not being able to retrieve them all from Civi in the edit screen.

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