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

Embed Google Maps Field

The Embed Google Maps module provides a CCK field for embedding Google Maps into nodes. You can embed any kind of Google Maps including driving directions and personal maps. You can also type a search query into the field and display the search results in the field.

No Google Maps API key is required. Maps can be embedded right away with no setup needed.


Token Field

Token Field allows you to define read-only CCK Fields which generate their output using Tokens.


For example, you may have 3 CCK Fields:

  • field_currency - (Text, Select Box)
  • field_minimum - (Numeric, Textfield)
  • field_maximum - (Numeric, Textfield)

You may want to output this as a single field, eg: $100-200. Currently you could do this using a custom module, a theme level template file or the awesomely powerful Computed Field.

Wouldn't it be nice to just define a "template field" without needing to know any PHP?

Enter Token Field.

Using this module you just add a new field to the content type and define the "template" code (which also uses Input Filters). You could setup:

<span class="currency">[field_currency-raw]</span><span class="min">[field_min-raw]</span><span class="max">[field_max-raw]</span>

You have access to the CCK Field for the current node, all other Node level tokens and all Global Tokens.

You can essentially use this to create a Compound CCK Field using Tokens.

Conditional Tokens


Money field


This module defines the "money" field. It uses the Currency API, which is included in the Currency module, to get a list of existing currencies and their symbols.

Version 6.x

The form element for amount is reused from the Formatted Number CCK module. Decimal points and thousands separators are formatted using the Format Number API module, where these options are configured from site and/or user settings.

- Required modules: CCK, Currency API, Format Number API, Formatted Number CCK.
- Recommended modules: Checkall (enhances currency selection).
- Integrates with: Views, Diff, Token (builtin cck itself).
- Related modules: Apache Solr Money Slider.

The currency conversion dialog submodule requires jQuery 1.3.x (jQuery Update 6.x-2.x) and jQuery UI 1.7+ to work properly.

You may also want to check out Measured Value Field, which is pretty similar to Money field, but allows you to combine numeric fields with other units of measurement.


Reference views

This module allows views to be used as formatters for CCK node and user reference fields. This means that instead of just a title, teaser, or full node, you can show nodes using any fields that are available to Views, in any sort order, in any view style, with any views theming.

This module is version 2 of Node reference views, reworked to provide multiple formatters, and for user references as well as node references (hence the change in name).


Advanced Text Formatter

#D8CX: I pledge that Advanced Text Formatter will have a full Drupal 8 release on the day that Drupal 8 is released.

This module is just a formatter (display) of textfield, text area and text format. The idea behind this is to provide a simple solution, easy to setup, with few dependencies to display text on website.


The trim function in this module is taken from Views module with a few modifications.


Of course, this module is fully compatible with any modules that use entity formatters, such as Views or Panels

Besides that, this module is extremely useful when you use it with view modes. In order to create a new view mode, you can implement the hook_entity_info_alter() or install Entity view modes module.


  1. Text (Drupal 7.x Core)
  2. Filter (Drupal 7.x Core)


Mobile Codes

The Mobile Codes module provides the ability to render Text, URLs or any other form of informaton as a Mobile Code, including but not limited to the QR codes and Datamatrix formats, providing a simple way of transfering said information from the screen to a Mobile phone.

Mobile Codes was written and is maintained by Stuart Clark (deciphered).
- http://stuar.tc/lark



  • User definable and Features exportable Mobile Code Providers and Presets.
    • Defaults provided:
      • Six (6) External Providers.
      • One (1) Internal Provider (see below).
      • Three (3) to five (5) Presets (based on installed modules).
  • Render Mobile Codes via:
    • CCK/Fields/Views formatters:
    • Input filter.
    • Drupal API Theme() call.
  • Blocks:
    • Node URL block - Creates a Mobile Code of the current Node URL.
    • User vCard - Uses the vCard module to provide a vCard Mobile Code from a Nodes Author or a users profile.
    • [D6] Mobile Code generator - An Admin module optimized helper block.
  • Support for:
    • [D7-DEV] Drupal core Image module - Use an Image style on the Mobile Codes.
    • [D6] Mobile Tools module - Redirect internal Mobile Code URLs to Mobile site URL.
    • [D6] Redirecting Click Bouncer module - Track URLs accessed via Mobile Codes.
    • Shorten module - Shorten URLs in Mobile Codes.


Scald: Media Management made easy

Logo Scald

#D8CX There will be a migrate path for Scald to Media Entity when Drupal 8 is released.

Scald is a popular and flexible way to handle media in Drupal.


CCK Table Field

This module adds a CCK table field type that lets you add a table display to any content type without having to manually enter HTML. It currently parses text data to form the header and row content. The output is generated by the theme system, so you don't have to worry about formatting valid HTML or adding all those little classes yourself.

A related module is Tablefield. It is a more advance version of this module.

Initial D5 release developed by Wombats.
Ported to D6 & D7 by Tyler Struyk & Sponsored by Themes 24/7


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.


Node reference views

Node Reference Views example

This module is now deprecated. Development continues at Reference views, which is essentially the 2.x branch but with a new name.

This module provides a new display formatter for CCK node reference fields. The formatter allows a view to be used as the display style for CCK node reference fields. This means that instead of just a title, teaser, or full node, you can show nodes using any fields that are available to Views, in any sort order, in any view style, with any views theming.

The view should have the same name as the field, including the automatic 'field_' prefix, eg 'field_my_noderef'. The first view argument must be a node id, set to allow multiple ids: this has passed to it all the nids from the CCK nodereference field. No other arguments are passed to the view. The view's default display is shown.

To get started, you can clone the example view that comes with this module: it comes with the argument already set. You can add any fields and sorts and filters. One limitation however is that the order of items set in the CCK field isn't accessible to Views.

This module does nothing to node edit forms.

Other modules


Hierarchical Select Field Selector

Hierarchical Select implementation allowing to choose content types and their fields in a user-friendly way. Reusable form element.

This is developer module. Install it only when required by other module.

Requirements: Hierarchical Select, CCK

Modules that use Hierarchical Select Field Selector: Imagefield Avatar


File Entity Inline

This module aims to provide the ability to edit File entities inline, as part of another form (such as nodes). This should enable the ability for reusable and site-wide editing of file properties, such as description, alt text, captions, bylines, etc.





The Slickgrid module is an implementation of Michael Leibman's jquery slickgrid plugin, a lightening fast JavaScript grid/spreadsheet.

It defines a slickgrid view style, so all data can be output as an editable grid.

Features of the grid:

  • Grouping field - group fields with a common value together
  • Collapsible taxonomy fields (tree structures)
  • Tabs - organise columns into tabs
  • Resize, reorder & hide columns
  • Delete entities via the grid
  • Force fit columns (to fill the available column space)
  • Undo (undo previous changes - uses node revisions)
  • Set viewport height
  • Set row height
  • Add entities via the grid*
  • Clone entities*
  • Export data (via the views data export module)*
  • Multi edit/delete/clone/export (checkboxes will be displayed in the rows - select as many rows as you want to perform action against)*

* Drupal 7 version only.

At the front end, users can show/hide, resize, reorder columns & resize the height of the grid. These settings will be stored per user and used next time the grid is shown. Saving the view (via the usual views UI) will reset these settings.


CCK Required by Role


This module allows for certain user roles to be exempt from required fields. This is mainly useful to those on the back-end of a website do not necessarily need to fill all of the fields to submit a node.


When you are setting up the field you have the option to set certain role to be exempt from the required. When that user role comes to add or edit that node, the field will not be required for them.


Reverse Node Reference


The Reverse Node Reference module enhances Views with reverse relationships for node reference fields.

Drupal 7 status: This feature is provided by References and Views 3. See these threads: #1083902: Backreferencing (listing nodes that reference the target node) and #1188500: Provide a reverse taxonomy field relationship.


Node Reference fields in CCK for Drupal 6 provide relationships to Views that allow you to access fields from the referred nodes of a particular node reference field. These kind of relationships allow you to travel from the child node (the one that has the node reference field) to the parent node (the referred node).

For certain applications, we may also need to do the opposite, travel from the parent node (the referred node) to the child node (the one that has the node reference field). There was a request in the CCK to implement these kind of relationships, but it was basically discarded because the discussed approaches 1) had no support for node revisions, or 2) were going to require MySQL 5.1. See #241078: Reverse node-reference views relationship

This module implements the reverse relationships using the second option. It uses Nested Joins, that requires MySQL 5.1 (MySQL bug #1591) or PostgreSQL.

More information


Relevant Content

What is it?

This module provides two ways of referencing relevant content. Both of these methods provide configuration to filter for specific content types and vocabularies, limit the maximum size of the result and provide some header text. The result on both cases are a list of nodes which the module considers most relevant based on the categorization of the current page. This is achieved by finding other nodes which are of one of the allowed types and have the most number of terms in common. The two methods are:

This module will provide as many customisable blocks as a site administrator wants. Each block has its own settings for node type, vocabulary, maximum result size and otional header text. Blocks can appear on any page which causes terms to be loaded into Relevant Content. Usually this is any page which views a node (a node page or a view such as a taxonomy term list). Usually you only want a block to appear on a node page, however you may find situation where you want to place a block on a non-node page.
CCK (new)
The new CCK Field Type (available in both 1.3 releases for Drupal 5 & 6). This is a read-only field (much like Node Referrer) which allows the administrator to embed a field that is "display only" (ie, nothing appears on individual node edit forms). This field is configured in the same way the blocks are configured; node type & vocabulary filtering, maximum result size limit and header text. The advantage of the CCK method is the result set is more "embedded" within the content.


Field Indexer

The Field Indexer module indexes field data into Drupal's search index. Each field enabled for indexing becomes a type of index entry. Then, with an appropriate search module, users may perform keyword searches restricted by field.



Kaltura - OpenSource Video

Kaltura’s Open Source All-in-One Video Module for Drupal

Kaltura is the leading video technology provider and creator of the world’s only Video-Platform-as-a-Service. Kaltura VPaaS is a highly reliable, scalable, and flexible open video platform, powering hundreds of thousands of video experiences and workflows across industries in over 100 countries worldwide. A recognized leader in the OTT TV (Over the Top TV), OVP (Online Video Platform), EdVP (Education Video Platform) and EVP (Enterprise Video Platform) markets, Kaltura is used by thousands of global enterprises, media companies, service providers, educational institutions, start-ups, technology platforms and cloud providers and engages hundreds of millions of viewers at home, in work, and at school. The company is also the initiator and backer of the leading open source video management project, home to more than 100,000 community members. For more information visit corp.kaltura.com, Join the community discussion board and explore Kaltura on GitHub.

Download the User Manual and Install/Config Guide (PDF)

What is Kaltura’s Video Module for Drupal?

A standard Drupal Module that integrates the Kaltura video platform capabilities into Drupal, allowing you to instantly enrich your Drupal site with video, audio, and images. Kaltura’s video platform and video module for Drupal is an enterprise grade solution that offers comprehensive powerful functionality and full control over content ownership, without the need to run your own video operation. The module handles every aspect of rich-media, including uploading and importing content, transcoding, content management, syndication, monetization, distribution, and more.


CCK List

This module adds a CCK list field type, that lets you add a list display to any content type, without having to manually enter HTML. To be more specific, it adds a textarea field. Every row in the textarea will be a list point. The output is generated by the theme system, so you don't have to worry about forming valid HTML or adding all those little classes yourself.

Under the cck(d6)/fields(d7) display option you can choose to display the list as an ordered or unordered list.




This module adds a widget for the CCK Text field type to support storing Twitter usernames, lists, hashtags, and/or search terms, and formatters to render the values.


Image Editor

Image Editor: Aviary Feather editor

Edit/create any images / take a photo from a webcam online with the powerful and feature-rich image editors and save resulted images back to your site!




Select2 Field Widget

Select2 - The jQuery replacement for select boxes now available for Drupal fields.
This module provides a new Field widget for Entityreference and Term reference fields. It is based on the Select2 jQuery library: http://ivaynberg.github.io/select2/

This module integrated this library with the Drupal Field API, and provides a new type of widget.


Multiple Value Widget


Drupal utilizes draggable tables to handle multiple value forms. It's quite convenient for most simple field types. However, for complex field types such form can be cumbersome. For example, the widget for Image field type can contain a preview of a file, an upload button, a text field for title and alt attributes. Sometimes you have a lot of images to be uploaded and the form takes up a lot of space.


CCK Redirection

This module provides a CCK field for redirecting a user to a new URI. The creator of a node specifies a valid URI in the CCK field, and when a user visits that node, he will be redirected to the destination specified in that field.

Sponsored by and co-maintained with Prometheus Labor.

Drupal 6:
In Drupal 6, you can also choose to redirect instantly, with a delay (using javascript), or put the target URI page in a frameset (like Google Images).


Composite Layout

ProsePoint Demo Screenshot

Composite Layout allows your nodes to be displayed in complex layouts. Currently, two and three column layouts are provided. You can also add other nodes, blocks, and even CCK fields to your node's layout. The content area of your node is divided into zones and you decide what should appear in those zones. Zones are essentially the same as Drupal blocks, but they apply to nodes rather than the entire site.

You can think of Composite Layout as Drupal blocks for nodes.

There is overlap in functionality between Composite Layout and Panels. Both address the issue of complex layouts, but each has a different approach.

Here is an informal comparison:

  • Panels is more powerful and flexible (I think, I'm not a Panels expert).
  • Composite Layout is simpler (I hope).
  • The user interface is different. You may prefer one or the other.
  • Composite Layout applies on content types, so it can be turned on for any node. Furthermore, you can have more than one composite layout node type.
  • If you use the Content Construction Kit, Composite Layout allows you to manage the layout of your CCK fields.

Otherwise, it will probably come down to personal preference as to which is more suitable.