711 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.

Entity API

This module extends the entity API of Drupal core in order to provide a unified way to deal with entities and their properties. Additionally, it provides an entity CRUD controller, which helps simplifying the creation of new entity types.

Requirements

  • Drupal 7.2 or later; suggested Drupal >= 7.15

Documentation

You can find documentation in the handbooks. Also check the README and the provided API docs in entity.api.php.

Overview

For site-builders

This is an API module, so it doesn't provide any end-user features. However, it provides some entity generic functionality to other modules that site-builders may leverage:

  • A Views display plugin and field to render or link to any entity (by view-mode)
  • A CTools content plugin to render any entity (by view-mode)

Downloads

Variable

Variable module provides a registry for meta-data about Drupal variables and some extended Variable API and administration interface.

This is an API module so it must be installed only when other modules require it.

Module Developers: Please declare your variables.

Add-ons for module developers here: Variable Extra

This is a nice introduction to the module by Lullabot, Module Monday: Variable.

Why?

  • So other modules can know about your module's variables and they can be translated, exported, used in views, etc.
  • You'll get automatic variable edit forms, tokens, access control and uninstall for free
  • Your module's variables will be allowed for Variable Realms being able to get values for each language (Internationalization) or Domain (Variable Domain)

Downloads

Views PHP

This module allows the admin account (user 1) to add fields, filters and sorts to views which use PHP code. It also supports additional accounts when the core PHP Filter module is enabled.

Downloads

Content Access

Content Access tab in a content type

What is Content Access?

Yet another content access module.

This module allows you to manage permissions for content types by role and author. It allows you to specifiy custom view, edit and delete permissions for each content type. Optionally you can enable per content access settings, so you can customize the access for each content node.

Features

  • It comes with sensible defaults, so you need not configure anything and everything stays working
  • It is as flexible as you want. It can work with per content type settings, per content node settings as well as with flexible Access Control Lists.
  • It tries to reuse existing functionality instead of reimplementing it. So one can install the ACL module and set per user access control settings per content node.
    Furthermore the module provides conditions and actions for workflow-ng / rules, which allows one to configure even rule-based access permissions.
  • It optimizes the written content node grants, so that only the really necessary grants are written. This is important for the performance of your site.
  • It takes access control as important as it is. E.g. the module has a bunch of simpletests to ensure everything is working right.

Downloads

Services

A standardized solution for building API's so that external clients can communicate with Drupal. Out of the box it aims to support anything Drupal Core supports and provides a code level API for other modules to expose their features and functionality via HTTP. It provide Drupal plugins that allow others to create their own authentication mechanisms, request formats, and response formats.

Currently all development is happening on github for the useful help of PR's. https://github.com/kylebrowning/services

Downloads

Security Review

Security review example results page

The Security Review module automates testing for many of the easy-to-make mistakes that render your site insecure.

Downloads

Nodeblock

This module allows you to specify content type(s) as being a block. This allows the content managers of the site to edit the block text and title without having to access the block administration page. Users only need edit access to that node in order to edit it.

We advice you to use this module together with Node Level Blocks or Block Reference module.

It is very handy to create a simple block content type and enable this content type for blocks and use these in place of the normal 'add block' functionality.

Now supports translatable content (Contrent translation with i18n and Entity Translation)

If Content Translation is enabled, then only a single node block per translation set is exposed and the node from the translation set with the appropriate language is loaded into the block.

Other modules

There are several other modules and approaches that allow nodes to be presented as a block. See a comparison at http://groups.drupal.org/node/93499

Drupal 7

The Drupal 7 version of this module enables the use of view modes. This gives the user even greater control over customizing the output of the node block. Default view modes and links display can now be assigned per content type and then overridden at block/node level.

Drupal 6

Downloads

view_unpublished

Description:
This module allows you to grant access for specific user roles to view unpublished nodes of a specific type. Access control is quite granular in this regard.

Additionally, using this module does not require any modifications to your existing URL structure.

Downloads

Workbench

workbench-screenshot.png

Workbench provides overall improvements for managing content that Drupal does not provide out of the box. Workbench gives us three important solutions:

  • a unified and simplified user interface for users who ONLY have to work with content. This decreases training and support time.
  • the ability to control who has access to edit any content based on an organization's structure not the web site structure
  • a customizable editorial workflow that integrates with the access control feature described above or works independently on its own

These features benefit the end users as well as Drupal Site Administrators and Technical Support.

For Drupal Developers and Site Builders, Workbench provides several additional benefits:

  • a modular architecture: only install and enable the modules you want
  • extensibility: we would love to see more integration with other Drupal modules (in fact we have our eyes on Scheduler and Workflow modules and improvements for Asset Management)

Drupal 8

For the latest status on Drupal 8 ports, see our pre-DrupalCON update.

Workbench core is a series of Views. For current sites, we recommend creating custom Views for editors or modifying existing Views using the tools provided. There is a port underway on GitHub.

Related Modules

Downloads

Email Registration

Allow users to register and login using only an email address. Users can then log-in using their email address and password for authentication.

Downloads

Advanced Forum

Advanced Forum builds on and enhances Drupal's core forum module. When used in combination with other Drupal contributed modules, many of which are automatically used by Advanced Forum, you can achieve much of what stand alone software provides. Because it uses the core forum module, it uses the node and comment system built into Drupal and is completely integrated, not a bridge. While it doesn't have all of the features of stand alone forum applications, being completely integrated into your site provides advantages that they don't.

Downloads

ACL

The ACL module, short for Access Control Lists, is an API for other modules to create lists of users and give them access to nodes. It has no UI of its own and will not do anything by itself; install this module only if some other module tells you to.

We're aware of the following modules using ACL (let us know if you know of others):

Downloads

Override Node Options

A screenshot of the Override Node Options permissions

The Override Node Options module allows permissions to be set to each field within the Authoring information and Publishing options field sets on the node form. It also allows selected field sets to be set as collapsed and / or collapsible.

To install:

  1. Download, unpack and place in sites/all/modules/
  2. Adjust access control in admin/user/permissions
  3. Adjust Fieldset options in admin/settings/override_node_options

Note: Autocomplete "Authored by" field only works if user has "Access user profiles" permission.

Downloads

Search configuration

Combining both search forms, hiding fields, changed labels & reducing node types

This module has five main functions.

  1. Alter the appearance of the core node search form
  2. Group content types for more meaningful searching
  3. Restrict search results by the content type.
    This is a role based restriction.
  4. Restrict search results from showing individual items.
  5. Alter the pager limit (aka number search item results per page).

Admin user (uid 1) is exempt from restrictions.

Downloads

Entityform

Drupal 8

For Drupal 8 Entityform is now EForm

Overview

The Entityform module enables you to create front-end forms (fieldable entities), which contain fields that you define! These forms use the standard Drupal fields. This means that out of the box, you can use any standard Drupal node field! As of the time this article was written, there were over three hundred "field" modules. And since Entityforms are "Drupal entities", you will automatically be able to use future "field" modules!

The forms can be used to create custom surveys, petition, and personalized contact forms, and other customized form. (For those of you who have used Webforms, this module brings Webform's functionality into the "standard" Drupal field / entity world.)

As with everything in Drupal, there are Pros and Cons to using Entityform. All though Entityform is a powerful tool, it is not always the best solution. The article When to Use Entityform discusses the advantages and disadvantages that Entityform may have over other methods of creating user "submittable" forms. Do not use Entityform for forms that will contain 150+ form elements

Reccomended Versions

The Drupal 8 verision of Entityform has been renamed to EForm(to avoid name confusion).

For new users the 7. x-2. x alpha versions are recommended. These versions are also recommended for current 7.x-1.x users who are NOT using built in Rules integration. The only remaining issues with them is upgrading 7.x-1.x Rules integrations to use Entity Rules.

The Problem

While Webform is a great module with a huge following, it does not integrate with standard Drupal field or entity aware modules. And while Webform can be integrated into Rules and Views via additional modules, it does add complexity and overhead.

The Solution

To solve these issues, the Entityform module was created. It is a survey creation tool that allows integrates with standard Drupal field and entity aware modules out of the box.

Features

  • Ability to attach any Drupal Field to the Forms
  • Ability to use most field based and entity aware modules.
  • You can download submitted data to XML and / or CSV data files using View Data Export.
  • Rules based form submission notifications. Allows for complex notifications logic.
  • Rules based form access control. Allows for complex access logic.
  • Use Views to create to create an administrative listing of each Entityform type Submissions for fine grain control.

Downloads

Fieldable Panels Panes (FPP)

This module creates an entity that may be used in panel panes to create fieldable entity panes. These panes can be created either directly in the Panels UI or in a separate administrative UI and later added.

Once added, they can appear in the "Add content" dialog to be easily reused. Since they are fieldable entities, they can contain any kind of data that field API can provide.

Each entity supports revisions, and any revision can be made current without having to make a new revision.

Downloads

elFinder file manager

screenshot12.png

elFinder is a open source AJAX file manager

Features:

  • Integrated with WYSIWYG API capable editors: CKEditor, FCKeditor, TinyMCE, BUEditor (D6), jWYSIWYG (D6), YUI, WYMeditor
  • Multiple file upload
  • File copying/moving with Drag & Drop support
  • Quick file and directory rename
  • Image resizing
  • Lightbox-preview
  • Contect menu with generic file/directory operations
  • Inline text file editing
  • Favories directory list
  • Directory selection history
  • Working with archives
  • File descriptions

2.x version additional features:

  • Drag and Drop file upload
  • Drupal file table integration (including Private filesystem support)
  • Search
  • Visual image resize, crop and rotation
  • Role based access control

Like it? Your donation will be very appreciated!

Module/Library version compatibility list

Module verson Supported library versions
7.x-0.8 1.2
7.x-0.7 1.1RC3 - 1.2

Downloads

Juicebox HTML5 Responsive Image Galleries

Juiceboc gallery screenshot

This module provides an integration between the popular Juicebox HTML5 responsive gallery library and Drupal. Juicebox is in many ways the successor of Simpleviewer and offers a powerful cross-device solution for image galleries, sliders and more.

The Juicebox library, which is distributed, maintained and supported separately from this Drupal project, is:

  • Based on HTML5 and supports "universal playback". This means it can run on nearly any device and supports multiple input methods (touch gestures, etc.).
  • Fully responsive so galleries can dynamically re-size and adapt to different browser sizes.

This Juicebox module integrates with the library and allows you to turn arbitrary Drupal image data into Juicebox galleries. It includes:

  • A field formatter that allows image and file fields to be formatted as Juicebox Galleries (individual nodes/entities can contain Juicebox galleries).
  • A views style plugin that allows content and file views to be formatted as Juicebox galleries (groups of nodes/entities or files can become Juicebox galleries).

Downloads

Domain Access

Screen shot 2011-09-16 at 11.50.21 AM_0.png

Drupal 8 status

See https://github.com/agentrickard/domain for the most current work.

Overview

The Domain Access project is a suite of modules that provide tools for running a group of affiliated sites from one Drupal installation and a single shared database. The module allows you to share users, content, and configurations across a group of sites such as:

  • example.com
  • one.example.com
  • two.example.com
  • my.example.com
  • thisexample.com <-- can use any domain string
  • example.com:3000 <-- treats non-standard ports as unique

By default, these sites share all tables in your Drupal installation. The Domain Prefix module (for Drupal 6) allows for selective, dynamic table prefixing for advanced users.

Installation

Module installation requires edits to your site's settings.php file. See the online installation guide for details.

Technical background

The module uses Drupal's Node Access system to determine what content is available on each site in the network. Unlike other multi-domain modules for Drupal, the Domain Access module determines user access based on the active domain that the user is viewing, rather than which group or site the user belongs to. For more information about Node Access in Drupal, see http://api.drupal.org/api/group/node_access/7

This module uses some advanced Drupal concepts and requires that you understand and control your site's DNS configuration. See this case-study or this more recent Row Eleven Wine Co. post for more details about using Domain Access.

You can also watch video of the DrupalCON Paris session "Managing Multiple Sites with Domain Access" (from 2009).

If you are looking for a module to provide subdomains to users and groups and do not need to affiliate content, take a look at Subdomain.

Downloads

Nodeaccess

Nodeaccess Grant tab

Nodeaccess is a Drupal access control module which provides view, edit and delete access to nodes. Users with the 'grant node permissions' permission will have a grant tab on node pages which allows them to grant access to that node by user or role. Administrators can set default access controls per content type, and also define which roles are available to grant permissions to on the node grants tab.

The upshot is, this module allows you to do things like 'node 123 can be viewed by authenticated users and edited by admin users and joeuser'. As an added bonus, update and delete permissions are separated, so you can make sure users with edit permissions cannot accidentally delete pages.

7.x version
The previous maintainer (chadcf) had released a dev version of nodeaccess for D7. Over the following months a number of bugs/issues were reported and as of May 7th, 2013, all bug reports in the issue queue have been addressed (where possible) and with that, version 7.x-1.0 has been released as a stable/recommended release for Drupal 7.

Future Roadmap

Downloads

Rabbit Hole

What is this?

Rabbit Hole is a module that adds the ability to control what should happen when an entity is being viewed at its own page.

Perhaps you have a content type that never should be displayed on its own page, like an image content type that's displayed in a carousel. Rabbit Hole can prevent this node from being accessible on its own page, through node/xxx.

Options

This works by providing multiple options to control what should happen when the entity is being viewed at its own page. You have the ability to

  • Deliver an access denied page.
  • Deliver a page not found page.
  • Issue a page redirect to any path or external url.
  • Or simply display the entity (regular behavior).

This is configurable per bundle and per entity. There is also a permission that lets certain roles override Rabbit Hole completely.

It's possible to evaluate PHP for the redirect path. This makes it possible to execute different redirects based on whatever logics you need. Perhaps you want a user to be able to view nodes that he has created, but no one else's. The PHP evaluation is limited to users with the appropriate permission, so there's no unnecessary security breach.

Supported entities

Downloads

Menu per Role

Sample of hide/show flags in the edit node and edit menu forms.

This module allows you to restrict access to menu items1 based on user roles. It depends on the Drupal core menu.module—just activate both modules and edit a menu item as usual. There will be a new fieldset that allows you to restrict access by role. The fieldset also appears in the node edit form.

1We wrote "menu items", not "nodes". This module does not prevent users from accessing the destination nodes. It only changes the visibility of the menu items.

Warning: Update in 6.x-1.x-dev (and next in 1.9)

The newest 6.x-1.x-dev reverts a change made in version 1.8 so administrators do not see hidden menus by default. However, the main administrator user (UID 1) still sees hidden menus unless you go to the new administrative screen and change the flags there.

Note also that the module was moved from the "Others" package to the "Menu" package. It seems to make sense to have it there since most menu related modules are found there.

Downloads

Login Security

Login Security module improves the security options in the login operation of a Drupal site. By default, Drupal introduces only basic access control denying IP access to the full content of the site.

With Login Security module, a site administrator may protect and restrict access by adding access control features to the login forms (default login form in /user and the block called "login form block"). Enabling this module, a site administrator may

Downloads

Revisioning

Revision summary page

Revisioning is a module for the configuration of workflows to create, moderate and publish content revisions.
You use it in scenario's like this:

  • Authors write content that prior to being made publicly visible must be reviewed (and possibly edited) by moderators. Once the moderators have published the content, authors should be prevented from modifying it while “live”, but they should be able to submit new revisions to their moderators.
  • We shouldn't have to grant these roles “god-like” powers (e.g. D6's "administer nodes" permission) to implement this.

Downloads

Openlayers

The Drupal Openlayers Module

Openlayers 3: features

Openlayers
The Openlayers core code stores map's object configurations: maps, layers, styles, sources, controls, interactions and components. It combines them to create maps using the Openlayers JavaScript library on any Drupal site.
Layers

Downloads

Pages