Add functionality and customize your Drupal application with thousands of projects contributed by our amazing community.

51,601 modules match your search

A module is code that extends Drupal's by altering existing functionality or adding new features. You can use modules contributed by others or create your own. Learn more about creating and using Drupal modules.

Openlayers

The Drupal Openlayers Module

Openlayers 3: features

Openlayers

Anti-Spam by CleanTalk

Anti-Spam module by CleanTalk to protect your Drupal sites from spambot registration and spam comments publications thru comment and contact forms.

Invisible anti-spam without CAPTCHA, questions, puzzles, counting animals, math and etc. Just install and forget.

CleanTalk is a SaaS spam protection service for Web sites.

CleanTalk uses protection methods which are invisible for site visitors.
Using CleanTalk eliminates needs in a CAPTCHA, questions and answers, and other methods of protection, complicating the exchange of information on the site.

The module is tested and ready to protect against spambots for Webform.

Galleria

This module allows users to create image galleries using the Galleria jQuery plugin, found on http://galleria.aino.se.

Smart IP

Smart IP identify visitor's geographical location (longitude/latitude), country, region, city and postal code based on the IP address of the user. These information will be stored in session variable ($_SESSION) with array key 'smart_ip', Drupal $user->data object with array key 'geoip_location' in Drupal 6 and 7 and user data service using the parameters 'smart_ip' as module and 'geoip_location' as name in Drupal 8 of the user but optionally it can be disabled (by role) at Smart IP settings page. Other modules can use the function smart_ip_get_location($ip_address) in Drupal 6 and 7 and \Drupal\smart_ip\SmartIp::query($ipAddress) in Drupal 8 that returns an array containing the visitor's ISO 3166 2-character country code, longitude, latitude, region (FIPS), city and postal code. It provides a feature for you to perform your own IP lookup and admin spoofing of an arbitrary IP for testing purposes.

CloudFlare

CloudFlare is a FREE reverse proxy, firewall, and global content delivery network and can be implemented without installing any server software or hardware.

On average, CloudFlare-powered websites load 30% faster, use 60% less bandwidth, and process 65% fewer requests. CloudFlare-powered websites are protected from many forms of malicious activity including: comment spam, email harvesting, SQL injection, cross-site scripting, and DDoS (denial of service) attacks.

8.x Features

  • Cache clearing by Tag (Recommended) and Path.
  • Restore client's original IP address.

7.x Features

  1. Corrects $_SERVER["REMOTE_ADDR"] so it contains the IP address of your visitor, not CloudFlare's reverse proxy server.
  2. Integrates with CloudFlare's Threat API so you can ban and whitelist IP addresses from the Drupal Comment administration screen.
  3. Integrates with CloudFlare's Spam API.
  4. Integrates with CloudFlare's Client Interface API (planned).

How do I get started with CloudFlare?

  1. Visit http://www.cloudflare.com to sign up for a free account.
  2. Follow their 5-minute configuration wizard.

Extra Field

Add a custom Drupal field with Extra field module

Provides plugin types to add extra fields in entity view and entity form of fieldable entities.

Contribute

The Contribute module adds a 'Community information' section to Drupal's status report (/admin/reports/status) which encourages individuals and organizations to join the Drupal community, become members of the Drupal Association, and contribute to Drupal projects, events, and more.

NOTE: A discussion is already in place for including Contribute module into Drupal core #2944651: Encourage participation, acknowledge contributions, and improve sustainability within Drupal (the software).

Fieldable Panels Panes (FPP)

This module creates an entity that may be used in panel panes to create fieldable entity panes.

Views Merge Rows

Merge rows settings are available under the OTHER section

Sometimes when you use relationships in views you get a number of rows with the same content in some of the fields. This results in a huge table (grid, list, etc.) that affects the usability of your view.
The Views Merge Rows module provides a way to combine rows with the same content in the specified fields.

HTTP Cache Control

HTTP Cache Control module helps fine grain control of Drupal's Cache Control headers.

Layout Builder iFrame Modal

Render Layout Builder edit forms in an iframe, using the admin theme.

Simple Add More

This module simplifies the multi-value widgets when they have fixed cardinality (max number of values allowed).

CKEditor 5 Template

This project provides a CKEditor 5 plugin for Drupal.
It allows to insert predefined content.

Browser Class

Summary

This small module helps theme-developers to deal with cross-browser compatibility. It makes easier to handle different types of non-widespread browsers just as much as it helps with using different versions of Internet Explorer.
The module extends the $body_classes variable in page.tpl.php based on the enduser's browser, and platform.

The module also makes a $browser_classes variable available in page.tpl.php, which stores the data in an array, this way the developer can make use of it as needed, if he does not wish to use the $body_classes variable.

Supported browsers

  • ie
  • opera
  • safari
  • chrome
  • netscape
  • ff
  • konqueror
  • dillo
  • chimera
  • beonex
  • aweb
  • amaya
  • icab
  • lynx
  • galeon
  • operamini

Browser version checking

The module creates version classes.

  • ie[version]
  • opera[version]
  • chrome[version]
  • safari[version]
  • netscape[version]
  • ff[version]
  • konqueror[version]
  • operamini[version]

Supported platforms

  • win
  • ipad
  • ipod
  • iphone
  • mac
  • android
  • linux
  • nokia
  • blackberry
  • NetBSD
  • FreeBSD
  • OpenBSD

Mobile detecting

The module checks if the device is mobile and adds "mobile" or "desktop" class.

DataTables

The DataTables Drupal module integrates the smart DataTables plugin (originally jQuery based but in future vanilla JS) written by awesome Allan Jardine into Drupal as a tables views style and a cal

ImageCache

Image Cache

ImageCache allows you to setup presets for image processing. If an ImageCache derivative doesn't exist the web server's rewrite rules will pass the request to Drupal which in turn hands it off to ImageCache to dynamically generate the file.

Reverse Proxy Header

This module is the simplest way to use the specific HTTP header name to determine the client IP.

Entity Reference Validators

This module adds additional validators for Entity Reference fields.

So far it includes two validators:

Page manager existing pages

Page manager existing pages allows you to override/configure Drupal menu paths so you can create variants with Page manager, which is bundled in the CTools project.

Technically, this project defines one abstract task and one content type plugin, so menu items can be overridden and the original page callback can be called through the content type plugin. This project comes with one default existing page, which is 'node', the default Drupal frontpage.

Tested overridden paths

  • Drupal frontpage at 'node'.
  • Media file paths as 'media/%'.
  • Apache Solr search pages at any path you defined.
  • FAQ at 'faq-page', 'faq-page/%', 'faq-page/list' and 'faq-page/%/list'.

In theory, any menu callback can now be overridden. Default contexts can be added for entity paths, but will need more testing.

Installation

Install the module as usual, more info can be found on http://drupal.org/documentation/install/modules-themes/modules-7
You should also install Panels, which is not a dependency for this module but is the recommended module to start overriding page layouts. Panels can be found at http://drupal.org/project/panels

Usage

On admin > structure > pages click "add existing page".

Mailgun

Mailgun logo

Mailgun module provides integration with the Mailgun email service.

Menu Link Weight

This module replaces the standard numeric weight dropdown widget for menu links in the node form with a tabledrag widget that lists all children for the selected parent.

jQuery Easing

The jQuery Easing module makes the jQuery Easing plugin available for Drupal modules/themes to use.

Browscap

Browscap provides an improved version of PHP's get_browser() function.

The get_browser() function can be used to tell what a visitor's browser is capable of.

Pages