Drupal is an incredibly versatile Content Management System (CMS) that goes above and beyond building the basic website – and sometimes beyond websites entirely! Drupal sites are made out of basic components like nodes, blocks and views, but those building blocks are extremely extensible and customizable, and benefit from Drupal’s high technical standard and open-source community mindset. Not only can Drupal do just about anything a website (or a developer) might need to do – it’s likely that someone has already paved the way for how to do it.
The basic architecture of a Drupal site is built on fielded, inter-related content. Most types of information can be organized using this architecture, and these core components make a good foundation for many kinds of interfaces and integrations.
What follows is a short list of just some of Drupal’s unique features, implementations, and possibilities. We include module recommendations and examples as well.
Complex mapping features, including filtering by distance
Any organization that has multiple physical locations, be it offices, retail locations, community events, museum sites, or really any data with a physical location attached, can make use of mapping features. Whether you show everything in one map or individual maps for each piece of content, you can find solutions within the Drupal ecosystem.
https://www.drupal.org/project/geolocation – Kind of a “one size fits all” solution, offering location fields, formatters, map integration, and views integration tools.
https://www.drupal.org/project/geofield – Adds fields for storing many kinds of location data, and formatters for displaying that data. Essential for most custom map projects.
https://www.drupal.org/project/geocoder – Lets you turn addresses (see the address module) into latitude and longitude points, which you can store in fields provided by geofield or geolocation.
https://www.drupal.org/project/address – Stores addresses, with support for a variety of address formats. Handles the tricky bits of international address logic for you – and it’s more complicated than you think!
For Drupal 7, there’s a great chart explaining what modules are compatible with each other here: https://www.drupal.org/node/1704948. This can help you decide what suite of modules to use.
(From left to right)
Organizations that offer memberships and member services often wish to offer secure, convenient online self-service to their members. Drupal is one of the more customizable options in this field, whether you need to build a standalone portal or one which is tightly integrated with a Constituent Relationship Management (CRM) solution such as Salesforce.
https://www.drupal.org/project/openid_connect – Helps with single sign-on integration with various identity providers that use OpenID. If you want to log in with Drupal using something else, this is often a good starting point. (If you want to use your Drupal site as your login for other sites, try https://www.drupal.org/project/oauth2_server)
https://www.drupal.org/project/salesforce – The essential Salesforce suite of modules. If you have Drupal and Salesforce, this module is the ticket to getting the two talking to each other. Well-maintained and easy to extend & customize.
(From left to right)
Learning Management Systems
This is another area where Google isn’t the only player on the field, but offers a huge amount of customizability, and the ability to tightly integrate with a CRM such as Salesforce.
During this global pandemic, more and more organizations are moving to virtual meetings, tours, conferences, and other experiences. Many other organizations had already started that transition. In either case, Drupal is waiting, with integrations and customizability.
Content hub for other sites/applications
Content can be created in Drupal and posted to other sites, including other websites, social media platforms, and CRMs such as Salesforce. Drupal can also power Alexa skills, mobile apps, and digital signage, and there’s at least one example of Drupal powering an arcade-style video game!
The first step of reusing your content somewhere else will be setting up an API. There are a bunch of ways to do this with Drupal!
The JSON API is now in core! Activating it will allow you to make all your site’s content available through a robust and secure API – meaning you can use it for whatever project you can think of.
https://www.drupal.org/project/services – A more customizable API toolkit.
https://www.drupal.org/project/openapi – Make your APIs discoverable using OpenAPI, a.k.a Swagger.
Does one of these ideas pique your interest? Reach out and we’ll help you assess the level of complexity and develop an implementation plan!