Mapas y Drupal - DrupalCampSpain 2013

Durante el fin de semana del 26 al 27 de octubre el equipo de Ymbra nos dirigimos a la Drupal Camp Spain 2013 que tuvo lugar en Cáceres. Fue un evento estupendo (bien organizado, con muchas sesiones interesantes y una oportunidad de encontrarse con drupaleros conocidos y nuevos) en el que la mayor parte del equipo presentamos una sesión. La mía fue sobre una de mis pasiones, los mapas, y cómo usarlo en drupal, y de eso trata esta entrada.

Hace tiempo que estamos acostumbrados a ver mapas en la web. Tanto es así que es cada vez más habitual ver aplicaciones web o móviles en las que la geolocalización o los mapas juegan un papel importante. Drupal no es una excepción y es posible realizar mapas como http://theintertwine.org/explore, geluidvannederland.nl o http://xi.bienalarquitectura.es/es/proyectos por poner unos pocos ejemplos. Sin embargo, no es menos cierto que conseguirlo no es algo trivial y quien haya intentado alguna vez trabajar en ello se habrá podido sentir abrumado por la gran cantidad de módulos existentes (a día de hoy existen más de 90 módulos que se ocupan de algún aspecto relacionado con localización o mapas), configuraciones necesarias o conceptos tales como proyecciones, capas base, mapas, geocodificación... No solo eso, sino que además el panorama ha cambiado mucho en los últimos meses (por no hablar de cómo ha cambiado desde drupal 6). Y la sesión va precisamente de eso: de tratar de poner orden a todo el caos para tener un drupal 7 con una solución de mapas bastante completa y funcional.

La sessión, que podéis encontrar en esta misma entrada, empieza presentando los conceptos básicos que conforman un mapa (esté hecho con drupal o no)  para facilitar la comprensió de la siguiente parte, en la que se presentan, clasifican y comentan algunos de los principales módulos disponibles. Así pues, se proporciona una especie de taxonomía que permite entender qué módulos son necesarios, cómo pueden combinarse para ofrecer una solución completa a nuestras necesidades o, si por el contrario, son excluyentes entre sí. La sessión continua con una comparativa de tres soluciones diferentes: OpenLayers + Geofield; Leaflet + Geofield and Getlocations. Con el objetivo de hacer más práctica la sesión este repositorio de github contiene los módulos, tipos de contenidos, vistas, librerías y dependencias necesarias para seguir la sesión, y todo ello agrupado en estas cuatro features pre-configuradas (así pues, quien quiera experimentar y poner en práctica los conocimientos aprendidos solo tiene que clonar el repositorio, instalarlo y activar la feature que corresponda):

  • mapping demo: controla las dependencias de módulos compartidos (libraries, views...). Es requerida por el resto de features.
  • leaflet_demo_dc_spain: contiene los tipos de contenido, dependencias y configuraciones de views y mapas utilizando leaflet.
  • openlayers_demo_dc_spain: contiene los tipos de contenido, dependencias y configuraciones de views y mapas utilizando openlayers.
  • getlocations_demo_dc_spain: contiene los tipos de contenido, dependencias y configuraciones de views y mapas utilizando getlocations.

La presentación termina señalando los pros y contras de cada solución y con una sección de referencias con más información. Espero que tanto la presentación como el repositorio os resulten interesantes y útiles.