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


ThemeKey allows you to define simple or sophisticated theme-switching rules which allow automatic selection of a theme depending on current path, taxonomy terms, language, node-type, and many, many other properties. It can also be easily extended to support additional properties exposed by other modules. In combination with Drupal's theme inheritance you can easily achieve features like:

  • individually-styled channels
  • a front-page / "splash" screen
  • a date/time-selected Christmas theme
  • mobile themes for different auto-detected mobile devices
  • special themes for "limited" or "old" browsers
  • content, user, or role -specific themes
  • indicating your environment (production, staging, testing, sandbox, … )
  • testing your redesign safely on a live server
  • ...

And unlike other theme switching modules, ThemeKey should play well with internal and external page caches, like Boost or Varnish, even for anonymous users.

Feedback is welcome!

Damn, ThemeKey ... ROCKS! Really appreciate the kick ass work you did on this :) mortendk


Crumbs, the Breadcrumbs suite

Crumbs calculates breadcrumbs for your site.
It does so by finding the parent of the current page, then the parent of the parent, etc, until it arrives at the home page.

Crumbs comes with a bunch of built-in plugins, that can be individually enabled, disabled and prioritized, and some of which provide further configuration options.

Built-in plugins

Crumbs plugins have two responsibilities: (1) to determine the parent path for a given path, and (2) to determine the title for a specific breadcrumb link.

Built-in plugins exist for: Menu, Taxonomy, Entity reference, Organic groups, Path aliases, Entityreference prepopulate, Text fields, Forum, Commerce checkout, etc.

Besides, there are configurable token-based patterns to find the parent for entity pages per bundle.

As a fallback behavior, it will always try to find a parent by chopping off the last part of the path. And for the link title, the fallback is whatever was specified with hook_menu().

Fine-grained priority control

Most plugin priorities are further subdivided, to allow even more fine-grained control: By menu name (menu), vocabulary name (taxonomy), field name and entity bundle (entity reference), group content type (organic groups), etc.



Invitations are important to create network effects and exponential growth of a community of interest. This module provides an Invite a friend feature to allow your users to send and track invitations to join your site.


Subgroups for Organic groups

D6 version configuration page.


This module enables a user with the proper permissions to build group hierarchies (or tree) by nesting groups under other groups. Simple or complex group hierarchies can be easily created.

When a hierarchy has been established, user memberships and/or content posted to a group can be propagated up, down or sideways along the tree. So when a user joins a group, their membership can also get created in other parent, child or sibling groups. Separate propagation settings can be applied for content and membership propagation.


OG Menu Single

Instead or providing multiple menus per organic group as OG menu does, OG menu single provides a single menu -- for the entire site -- that each group has it's own section in this menu. Menu items can be added via node form like normal menu links, but only the group's section of menu will appear as option (do not enable the group menu under content type settings; it will appear automatically). A panel pane is provided that displays the menu for the currently active group.


OG Session Context

Adds a plugin for the og_context module that stores the current group into the $_SESSION to be saved across pages. Uses in Open Atrium 2.


OG Variables

Allows per organic group override of variables.

Using the variable API, allows for overriding of variables per organic group.


OG Extras

More blocks and views

Extra functions, blocks, and views for Organic Groups 7.2. In particular, this module adds views and blocks needed by sites that are not using Panels, although it also may be useful to sites that do use Panels. This module is for Organic Groups 7.2. It will not work with Organic Groups 7.1.

This module was created because the default views and blocks that come with Organic Groups only work in Panels. It restores some of the functionality of the D6 version of Organic Groups.


Organic Groups Menu (OG Menu)

Associate menus with Organic Groups.


Organic groups views

Module provides a field that allows you to display a view of group content inside the group entity. The field can be added to group entities and it provides a drop down selector to choose which view to use. Be sure to visit the Display Fields page after adding it to the group node and choose the display format of 'Group View'.

The rest of OG's views integration is inside OG core itself, so you probably don't need to install this module, unless you want the Views field functionality.


Organic Groups Mass Add

Overrides the internal "add users" page of Organic Groups with a more powerful alternative.

The D7 branch requires Views bulk operations.

Takes a list where each row can be either:

  1. username
  2. mail address
  3. firstname, lastname, mail address
  4. firstname, lastname, mail address, desired username

In case 1 or if there is an mail address provided, the module first checks if it matches an existing user, and adds that user to the group.

In case 2-4, if there is no matching user, the user will be created (as long as the person submitting the form has permissions to do so). Newly created users will also have a content profile node created for them if enabled (has a settings page).

The usernames are created by trying these alternatives in order:

  1. If one is provided, the suggested username
  2. The first part of the email address (everything before the @)
  3. If both firstname and lastname is provided, "F.L".
    F is x number of letters from firstname, where x starts at 1 and goes up to the full length of firstname.
    L is lastname.
  4. If firstname is provided without lastname, firstname only.
  5. If lastname is provided without firstname, lastname only.




The Shoutbox module provides a block where visitors can quickly post short messages.


Organic Groups create permissions

Per node type create permissions for Drupal 7 Organic Group content

The D7 version of Organic Groups does not provide any mechanism to limit node creation to a group context.

This module provides the following key features:


Team Notifications

Subscribe other people on your team to posts and comments as you are writing. This module provides a nice user interface to create subscriptions on the fly for other site users.

Notifications Team screenshot

Note that by using this feature, users can create subscriptions for other users, so this is mainly intended for small teams on which trusted users can decide which other members of the team should receive notifications about a post or follow up comments.

Required modules: Notifications.

It can work with Organic Groups when enabled, restricting the selection to other members of the active group, or function independently, allowing the subscription of all other site members.

Developers: Jeff Miccolis, David Goode. Sponsored by Development Seed.

Release information

The best release to use at this point is probably the latest 2.1 beta. The latest dev version includes customization support through a view.



Opigno is used to create e-learning platforms of all sizes. The Opigno core is lean and mean, providing flexible building blocks and APIs to create a custom e-learning system. It uses Drupal 7 and contributed projects like OG, Quiz, Rules and Views.

As opposed to many e-learning systems out there, Opigno was developed with a framework mindset, allowing organisations to build their own solutions quickly and simply. It makes no hard-coded assumptions about your organisation, privileging Drupal developers and site builders.

Sponsored by Connect-i.

Core Features

Opigno core provides little functionality out of the box. Most features live in other modules (which are also packaged as apps). You can search for these modules on Drupal.org or by enabling the Apps module and browsing through the list.


Outline Designer

Outline Designer 2.x


The Outline Designer is a user experience module that makes book management more intuitive. Essentially it overlays on the admin book outline page so that you can use AJAX to build and edit site outlines much faster then Drupal traditionally allows.

6.x-2.x branch (Upgrading from 1.x to 2.x)

If you are upgrading from the 1.x branch, uninstall 1.x and then add the 2.x version. Removing the original files will help keep things cleaner down the road as things have been shifted around based on best practices. There is no database work done so an upgrade should be as easy as uploading the module and running the modules page (hitting submit at the bottom).

7.x-2.x branch

This branch is in active development. Please help out by testing out the nightly devs and submitting patches. This is a direct port of the 6.x-2.x branch with some minor tweaks to make it work with drupal 7. It definitely has bugs still but can at least be installed for testing.

Modules implementing Outline Designer


    U Create

    Allow non-admin users on your site to create new users. The module automatically sends an invite email to new users with login information.

    This module integrates with OG. This means that users can create new users in a particular group.



    Views Gallery

    Update: There is a mostly-working D7 version in git, but it's not an official release because I no longer can maintain it. If you need something for D7 and can't use this code I suggest http://drupal.org/project/node_gallery as an alternative.

    I am no longer able to maintain this module, if someone else would like to take it over I'd be glad to hand it over.

    This module pulls together the techniques Jeff Eaton outlined in http://www.lullabot.com/articles/photo-galleries-views-attach to automatically create a simple gallery where each gallery is a node with an embedded view of images that were assigned to that gallery. The module creates the content types, sets up the imagecache presets, creates the default gallery view that is embedded into the gallery nodes by Views Attach, and adds css to make it all look nice.

    This technique also works well to create individual image galleries for Organic Groups, since the gallery and image content types can be configured as group nodes. Views Gallery OG, included in this package, provides a setup page to make it easy to automatically create a gallery for every group and adds group context to the forms wherever possible so the right groups and group galleries are pre-selected when you create gallery images.

    This module is mostly a bit of glue around numerous other Drupal modules. It is a perfect example of something the Features module was designed to do, and it is being reworked as a Feature instead of using custom .install code. All new development will be on the Features version. The versions are:

    • The 6.1 branch is the original code, which does not use the Features module.
    • The 6.2 branch is the new code, which requires Features, Strongarm, and CTools.
    • See the README.txt for instructions about how to upgrade from 6.1 to 6.2.

    This module is intended to be a lightweight gallery solution with a simple feature set that you can tweak using the CCK and Views UI and some custom css in your theme. If you want a robust gallery with advanced features, this is probably not the right module to use. If you need a quick and simple gallery solution built on modules you are likely to use elsewhere, this may be a good fit.


    OG Quiz

    Integrate the Quiz module with OG groups.

    This modules creates permissions similar to the core Quiz ones on the group level. This allows site builders to give Quiz creation/correction/taking permissions at the group level instead of globally.

    If a Quiz is outside a group, the global permissions take over.

    Install instructions

    First make sure you enabled the Quiz content type as a group content entity.



    Add multiple users

    The userplus module enhances Drupal's user administration and Organic Groups' subscription administration by allowing administrators to add multiple users at once, make multiple group assignments at once, and make multiple user role assignments at once.


    Views OG cache

    Add Views time based cache per group.


    OG Tasks

    Sample OG Tasks form

    OG Tasks provides a mechanism to create tasks to be run for a group, either automatically on creation, or optionally once the group has been created.


    Comment OG

    This module allows for integration between Comment and Organic Groups so that only group members can comment on group content. Flexibility is greatly expanded in the new Drupal 7 version.

    As always, feedback and patches are welcomed!

    Drupal 7

    A beta version of Comment OG is now available that controls permissions to edit, post, approve, and delete comments within groups. Permissions are granular by group role and content type using Organic Group's built-in permission system.


    Organic Groups Webform Integration

    This module provides integration between Organic Groups and Webform modules. It allows users that have "edit own webform content" or "access own webform results" to edit any webform content for which they are a group administrator. It also corrects some issues with properly displaying setting group context when editing webforms or viewing the submission results page.

    This module requires Webform 3.3 or higher.


    OG User Roles

    OG User Roles allows group administrators of organic groups to grant additional user roles to individual members of a certain group.

    Any additional permissions only apply within the context of this group and not globally. This means that the additional user roles to grant are determined and assigned by the requested page; e.g. node/123 belongs to group XYZ for which the user was granted additional roles. If the user goes to another page that does not belong to the same group, the additional user roles are no longer assigned.

    Additional user roles can only be granted, not revoked.

    Site administrators may also configure a default user role for new group members or a default user role for new group admins.