551 Modules match your search

Extend and customize Drupal functionality with contributed modules. If a module doesn't quite do what you want it to do, if you find a bug or have a suggestion, then join forces and help the module maintainer. Or, share your own by starting a new module.

Email downloadable


Super simple module that does 3 things:

  1. Provides a configurable “Download this node” link.
  2. Sends an email with a link to the download using a unique code.
  3. If the code is valid takes you to the download.

What a download is it’s up to you. The module provides a basic edwd-node.tpl.php you can override it in your theme or your module to customize it.


Shared Access

The goal of this project is to provide a method for users to easily configure access settings to their own entities. The interface for configuring access will come from a shared access field attached to the entity.

Development Roadmap

  1. Implement field hooks to define the new shared_access field type.
  2. Define formatters and formatter settings.
  3. Define widgets.
  4. Implement an extendible access controller class structure for defining access realms and their underlying functionality.
  5. Define several default access realms (user, organic groups ... perhaps a few more).
  6. Implement field hooks so that a form shows up on the entity content page.
  7. Implement a standard sharing settings form that can hook into the access controller classes and be used to control access to the entity.
  8. Provide autocomplete functions and hooks for displaying user name/og suggestions as the user types
  9. Implement access hooks and query/query_HOOK alter functions to control access
  10. Implement field access hooks so that the form only shows when the owner or configured admins view the page.


Add Term like Node

With this module you can add new Term like you add Node in menu Navigation.

С этим модулем Вы можете добавлять новые Термины также как Вы добавляете Материалы в меню Навигация.

The idea and Realization: Rysevets M.
Идея и Реализация: Рысевец М.


aGov Appearance

This lightweight module provides an additional permission 'Administer theme settings' to allow finer grained control over which roles can change theme settings.

Part of the aGov suite of modules.


Restricted Area

Restricted Area

If you want to secure some specific entities (nodes/term/assets/etc) or specific pages (still in development), you really need this module.

It allows you setup login and password, in a simple way, for each important page.

All password stored as hashes, so there are no security issues related to third-party access to the database.

DrupalJedi Logo


Domain SSL

This module adds support for mixed use of SSL and non-SSL (http and https protocols) for the 6.x branch of Domain Access.

Currently, Domain Access allows you to specify per domain whether to use http or https, and if a domain source is configured, URLs throughout that site (including form actions and so forth) use that protocol. However, if your site mixes use of both protocols (say, with SSL to protect the user login page, admin pages, or authenticated sessions in general), Domain Access does not support that configuration.

For background information, see the original issue: #758714: Allow both http and https for a given domain?



Nodelocks prevents any user from deleting a node if that node has been added to a list of "locked" nodes.

This module serves as a lightweight alternative to Content Access, which can be configured to prevent the deletion of certain nodes, along with much more functionality.


Domain Workflow Bridge Module

This module provides a bridge between Domain module and Workflow module. It makes it possible to have a multisite setup with Domain module and also maintain a consistent and working publication workflow.



Workflow required

This simple module allows nodes with required elements to be left empty when the node is in selected workflow states.

This is Useful for 'draft', 'unpublished' or 'staging' kind of workflow states where the node isn't yet finished. It's especially useful when using nodes as complex formal applications over several pages where users typically spend lot of time to fill out and work with them.

The FAPI '#required' attribute will recursively be unset after the form is build, but enabled again just before rendering, giving the user the same visual experience as before.


File Download Form

This module allows administrators to specify that a user must fill out a form (provide their e-mail address) in order to download a file uploaded using filefield.

When a user clicks on teh file (displayed in the node), they are redirected to a form to fill out, and will then receive an e-mail message with an obscured path to download the file.


OG Node Access

When you update the privacy settings of an Organic Group, you may need to rebuild the node access settings of the nodes assigned as posts to that group. Unfortunately the node access rebuild system focuses on rebuilding all nodes, instead of just those affected.

This module has forked the node rebuild system to allow developers to target one or more Organic Group's for node rebuild. It has the following features:

  • Automatically detect when group privacy changes as the result of the node edit form and directs users automatically to the batch edit screen.
  • Integration with Spaces allowing group administrators to rebuild node access for their group at need.
  • Developer API in the form of a og_node_access_needs_rebuild() function to add new groups for rebuild.
  • Plays nicely with general node access rebuild flag, allowing general node access to trump og-specific rebuild.

This is in response to #1101738: Repairing node access permissions without rebuilding all, thanks to @btopro for getting the ball rolling.


This module is set for maintenance and bug fixes only and is unlikely to get much in the way of new features. Good, minimal feature patches are welcome. As we currently have no use for a D7 version of this module, we are open to requests to create and co-maintain a D7 branch.


URL token

URL token is an API module to make token-based access control simple.

There are two main features:

  • Request a token
  • Check that a token is valid (usually via a URL)

You should only install this module if another module requires it. This module doesn't provide any functionality by itself, it provides features for other developers to use in their modules.


Regex Registration Deny

regex registration deny admin page

Small module that allows you to use regex to validate fields on the registration form.

While there are alternative modules to validate fields on the registration form, I found that none of them allowed for regex checks on the name and email fields on registration. They also seemed to be overly complicated or only allowed for checking on the username or email address.
This module is quite simple and allows you to check any textfield on the registration form.


Block Exclude Pages

This module adds an exclude pages filter for blocks.

To exclude specific pages after the wild card or in between wildcards, simply prefix the path pattern with a prefixed '!' in the block page visibility configuration.

This works for visibility set to "show for the listed pages", in this case, the exclude paths will hide the block on pages that match the despite the wildcard set to show.


Default Node Gallery

Add-on for the Node Gallery module that creates and maintains default gallery for every user.
The main goal of the module is to make image sorting easy, optional task, and to streamline the uploading process.


Access Private

This module allow accessing private nodes with a direct link.


Workbench Access Content Type

Extensible editorial access for the Workbench suite for granular access permissions by content types.

This module will add a new tab "Content Types" at the configuration page of Workbench Access, to provide permission by Section by Content Type.

This module was developed by Vardot for Georgetown University in Qatar.



GeoIP Role

GeoIP Role allows to attach countries to roles.

GeoIP Role allows to dynamically grant roles to the current user according to his IP address location.
It depends on the GeoIP API module.

Currently, GeoIP Role allows to attach countries to roles, thus defining geographical zones.
When a user visits your site, he dynamically gain the role(s) attached to the country reported by his IP address.

GeoIP Role may be used with any other module like Nodeaccess that controls access based on user roles.


Field ACL

This module will grant access to a node from a field. The field contains usernames.

This module requires the ACL Module.

This allows you to give users different access to every node.

This module is also compatible with nodechanges


Brain Forum Moderation


With Brain Forum Moderation you can add "Moderation" field to your
Brain Forum posts.
It creates an ajax link that opens a popup with variety of moderation options when clicked.

Development has just started so it will take some time before even the basic features are ready for production.
You can help by opening feature requests so i can figure out which features are actually needed.
These are some planned features:


Domain Override

Allows overriding page nodes on a domain-specific basis.


  • Provides an "Override" tab on node pages that removes the current domain from the node's domain access, clones the node, and publishes the clone to only the current domain.
  • Copies translations of the node being overridden (if any), too, so they're considered translations of the newly created node.
  • Sidesteps need to use multiple url_alias tables (with Domain Prefix). Makes Drupal interpret the URL alias for a node that's been overridden as a path to this domain's version of the node. Example: node 1 (the node at node/1) is published to all domains with the URL alias contact-us. You visit the node from the subdomain "cats" and select the "Override" tab. Now a new node has been created (node 2), that's published only to the "cats" subdomain, and node 1 is no longer published to the "cats" subdomain. When you visit http://site/contact-us you'll see the content of node 1. However, when you visit http://cats.site/contact-us, you'll see the content of node 2 -- node 1's override.


Hierarchical Select Access

Hierarchical Select Access

This module prevents certain roles from accessing the enhanced hierarchical menu provided by the Hierarchical Select module in content types.

Provides a UI to manage roles and content types.

This module helps solve this issue: https://drupal.org/node/298611

After enabling the module, go to admin/config/content/hierarchical_select/access
and tick the checkboxes next to the roles that should not access the hierarchical menu in content types.


IP Ban

IP Ban administration page

A large majority of all websites have content that's only relevant to a country or region. This can be problematic because visitors from other countries or regions may not exactly be visiting your site with your best interests in mind.

This module allows you configure the site to be "read only" or "complete ban" for a visitor based on individual IP addresses or by country (using IP address lookup).


File access by node type

File access by node type allows website administrators to select which roles can access files belonging to nodes of a certain node type. This goes beyond simple field permission, since there can be situations where users might embed an uploaded file into a Body textarea, or a WYSIWYG editor.

This module allows the restriction to work even in those cases by intercepting the file download before it happens. It also respects other access control mechanisms, since it defaults to either restricting access, or delegating it further. If the file download is not denied, and no other module is there to make a second decision, then it will download it. This allows for future integration with other modules and should be consistent in how Drupal handles access control.

To use

This module currently depends on FileField.

Enable this module as usual, then go to http://www.example.com/admin/settings/file_access_by_node_type to configure the different roles and node types.


This module was developed for Switchback by


OG Announce

Extends the Organic Groups module to allow creation of announcement only groups, into which only group administrators may post.