Easily Create Maps in Drupal with Leaflet

21
Easily Create Maps in Drupal with Leaflet May 1, 2014 - Amber Matz - @amberhimes http://lb.cm/acquia-leaflet

description

Mapping solutions in Drupal range from powerful configuration options in OpenLayers to simple one-line address fields that display a Google Map. Leaflet is a lightweight, mobile-friendly Javascript mapping library that uses Geofield to store location data. Geofield plus Leaflet is a solution with more options and flexibility than the Simple Google Maps contributed module, for example, and far less complexity, and fewer configuration options, than OpenLayers. If you're looking for an easy way to dive into mapping without pulling your hair out, then this webinar is for you. Join Amber Matz, as she walks through the process of adding a map to your Drupal site using Geofield and Leaflet. In this webinar, you'll learn: How to use Geofield to store location data in Drupal 7 How to display a single location marker on a map using Leaflet How to use Views to create a map of many locations

Transcript of Easily Create Maps in Drupal with Leaflet

Page 1: Easily Create Maps in Drupal with Leaflet

Easily Create Maps in Drupal with LeafletMay 1, 2014 - Amber Matz - @amberhimes !

http://lb.cm/acquia-leaflet !

Page 2: Easily Create Maps in Drupal with Leaflet

Hi! I’m Amber.Lullabot / Drupalize.Me

@amberhimes

Page 3: Easily Create Maps in Drupal with Leaflet

Easily Create Maps in Drupal with Leaflethttp://lb.cm/acquia-leaflet

Drupalize.Me Series: Mapping with Leaflet

Page 4: Easily Create Maps in Drupal with Leaflet

Mapping in Drupal‣ Location Storage ‣ Mapping library ‣ See comparison chart at:

• https://drupal.org/node/1704948

Page 5: Easily Create Maps in Drupal with Leaflet

Geofield‣ Location storage module ‣ Provides a new field type called Geofield ‣ Provides widgets for entering many types of

geospatial data

Page 6: Easily Create Maps in Drupal with Leaflet

Leaflet‣ A lightweight mobile-friendly javascript mapping

library ‣ A Drupal contrib module ‣ Developer API available

Page 7: Easily Create Maps in Drupal with Leaflet

Installing Geofield‣ Download Geofield, GeoPHP, CTools from drupal.org ‣ Enable GeoPHP, CTools, and Geofield ‣ Use drush!

• drush en geofield • This downloads the module and its dependencies

then enables them!

Page 8: Easily Create Maps in Drupal with Leaflet

Add a Geofield‣ Manage fields on a new or existing content type ‣ Add a new field using Field Type “Geofield”

Page 9: Easily Create Maps in Drupal with Leaflet

Create new location content‣ Add content using the Location content type ‣ Grab the latitude and longitude of a location

• Tip: Go to maps.google.com and click near a marker to find the lat/long

‣ Enter in the lat/long and submit!

Page 10: Easily Create Maps in Drupal with Leaflet

Installing Leaflet‣ Instructions at https://drupal.org/node/1645460 ‣ Install Leaflet JS to sites/all/libraries

• http://leafletjs.com/download.html ‣ Download and Enable Leaflet Drupal Module

• https://drupal.org/project/leaflet

Page 11: Easily Create Maps in Drupal with Leaflet

Your First Leaflet Map‣ Manage display of Geofield on content type ‣ Update Format to Leaflet ‣ Click gear ‣ Choose Leaflet Map: OSM Mapnik ‣ Click Update ‣ Click Save

Page 12: Easily Create Maps in Drupal with Leaflet

Leaflet Map Didn’t Display! :(‣ Check the status report page to make sure Leaflet is

installed correctly. If there is an error: • Check permissions of sites/all/libraries/leaflet • Check the Leaflet Issue Queue ‣ OSM Mapnik tiles are externally hosted.

• Make sure you are connected to the Internet.

Page 13: Easily Create Maps in Drupal with Leaflet

Create a Leaflet Map with Views‣ Enable Leaflet Views (leaflet_views) & Views UI

modules • Download dependencies (Views, Entity), if necessary ‣ Create a new view using display format: Leaflet Map ‣ Add Geofield to Fields and “Exclude from display”

Page 14: Easily Create Maps in Drupal with Leaflet

Leaflet Map Settings in Views‣ Title => Title Field ‣ Description => <node entity>

• View mode: Teaser (or custom view mode)

Page 15: Easily Create Maps in Drupal with Leaflet

Other things you can do…

Page 16: Easily Create Maps in Drupal with Leaflet

Custom icons‣ Save marker image to a good place in /sites/default/

files ‣ Make sure it’s appropriately sized ‣ Update Point Icon in Leaflet Map settings

Page 17: Easily Create Maps in Drupal with Leaflet

Add more map options‣ Leaflet More Maps

• https://drupal.org/project/leaflet_more_maps !

‣ Provides more maps for Leaflet!

Page 18: Easily Create Maps in Drupal with Leaflet

Change zoom settings‣ Each map has a min/max zoom range ‣ Zoom range is indicated next to map name

Page 19: Easily Create Maps in Drupal with Leaflet

Use tokens in popup‣ Enable token module ‣ Enable popup ‣ Copy/paste token into popup text field

Page 20: Easily Create Maps in Drupal with Leaflet

Mapping with Leaflet Series‣ Video series available on Drupalize.Me ‣ An extended and more in-depth version of this

presentation.

Page 21: Easily Create Maps in Drupal with Leaflet

Easily Create Maps in Drupal with Leaflet!

http://lb.cm/acquia-leaflet !