Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).

Automatically import and Geo Map your images and photo shoots in Drupal!

Drupal Recipe for Drupal CMS (& 10+) that implements advanced Geo Mapping functionalities with Media Images

Introduction

This Drupal Recipe enhances Drupal (10+) with advanced Geo Mapping functionalities with Media Geo Images provided with EXIF data, regarding both Shoot Location/Coordinates and Shoot Creation Date.

It is based on the advanced application and configuration of the Geofield and Drupal Media modules stacks, and is developed and tested on DrupalCMS (11+) and in particular on its following basic variants:

  • Core (no recipe and pre-configuration type applied)
  • Events (recipe / pre-configuration type applied)

Notwithstanding the above it may work fine and apply to any other Drupal instance where there are no existing configuration conflicts.

Requirements and Dependencies

Please check the following files for required dependencies:

Instructions

How to require / install it and make it magically work (out of the box)

This Drupal Recipe enhances the advanced interaction between the
Geofield, Leaflet & Geocoder geo mapping modules and the Media Library Importer module, for the automatic import of your images and photo shoots.

Note: This Drupal Recipe Instructions assume the use of DDEV

Step 1: place your images ready for import

The Drupal Recipe "out of the box" configuration expects to find all you images
in (and import from) the following "photo_albums" folder:

/web/sites/default/files/photo_albums

and is going to import all the images into geo images media from there.

Thus please place the images you want to import and automatically geomap in that folder of your Drupal (CMS & 10+) instance.

Warm Tip: As a first test and import it is much better not to exceed a number of images above 50 - 100, in order not to experience a too long
operating process. You will always be able to perform incremental / additional imports by adding new images to the same folder, without generating duplicate imports and Geo Images (thanks to the capabilities of the Media Library Importer module).

Step 2: change minimum stability into dev

At the moment the drupal/viewfield module could still be in beta release, thus the following composer command needs to be run, to change minimum stability into dev (and be able to correctly require it);

ddev composer config minimum-stability dev

Step 3: require and install the Drupal Recipe

Apply the following composer commands:

  • Require the Drupal Recipe:

    ddev composer require drupal/drupal_cms_geo_images

  • Clear the Drupal cache:

    ddev drush cr

  • Install and Apply the Drupal Recipe:

    ddev drupal recipe ../recipes/drupal_cms_geo_images

As a result your Drupal instance should have the following:

  • a new empty "Map" Home page (/geo-images-map) and Main Menù link;
  • a new empty "Images" grid page (/geo-images) and Main Menù link;

Step 4: import & automatic Geo Map your Images

Make double sure you placed your images in the "photo_albums" as instructed in Step 1, or in any other location, changing the Media Library Importer configuration (/admin/config/media/media-library-importer).

Then perform the Media Import operation, either manually from this Admin page:

/admin/config/media/media-library-importer/import

or throughout the following commands (worth a pre cache cleaning this time also):

ddev drush cr && ddev drush mli

and wait for the QueueWorkers complete all the import and the automatic Geo Mapping ...

All in one shot

For your convenience here is a unique line command that would perform all the above steps in one shot:

ddev composer config minimum-stability dev &&
ddev composer require drupal/drupal_cms_geo_images && ddev drush cr && ddev drupal recipe ../recipes/drupal_cms_geo_images && ddev drush cr && ddev drush mli

Et Voilà! ...

You should now have:

  • a new "Map" Home page (/geo-images-map) with your Goe Images displayed
    correctly, with preview icons and marker clusters;
  • a new "Images" grid page (/geo-images) with your images properly displayed,
    sorted and interactively filterable by date;

Additional hints and tech notes

The Drupal Recipe:

  • implements / requires the itamair/geo_images_custom custom Drupal module (located in packagist) to enhance specific functional logics. Feel free to check it out!
  • also generates a Geometry content type, with additional parametric fields &
    attributes (such Stroke Color, Stroke Width, Fill Color, etc.) and Leaflet
    Formatter & Leaflet View Style token and Replacement Patterns
    presets, by which to enhance and investigate advanced Geo Mapping Drupal
    capabilities.
  • implements automatic links to Google Maps and Streetview pages of your Geo
    Images, throughout the
    pschocke/google-maps-links php library;
  • etc ...

Enjoy automatic Geo Mapping of your Photos and your Geographic Story telling in Drupal.

Authors/Credits

  • Italo Mairo - itamair (creator and maintainer)

Activity

Total releases
21
First release
Feb 2025
Latest release
2 days ago
Release cadence
21 days
Stability
90% stable

Release Timeline

Releases

Version Type Release date
1.1.16 Stable Apr 16, 2026
1.1.15 Stable Apr 15, 2026
1.1.14 Stable Nov 9, 2025
1.1.13 Stable Nov 5, 2025
1.1.12 Stable Nov 5, 2025
1.1.11 Stable Aug 28, 2025
1.1.10 Stable Aug 27, 2025
1.1.9 Stable Aug 27, 2025
1.1.8 Stable Mar 22, 2025
1.1.7 Stable Mar 13, 2025
1.1.6 Stable Mar 6, 2025
1.1.x-dev Dev Feb 20, 2025
1.1.0 Stable Feb 20, 2025
1.0.6 Stable Feb 20, 2025
1.0.5 Stable Feb 20, 2025
1.0.4 Stable Feb 20, 2025
1.0.3 Stable Feb 19, 2025
1.0.2 Stable Feb 19, 2025
1.0.1 Stable Feb 19, 2025
1.0.0 Stable Feb 19, 2025
1.0.x-dev Dev Feb 19, 2025