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.

Autocomplete Widgets for Text and Number Fields

This module adds 3 autocomplete widgets for CCK fields of type Text and Number.

  • Autocomplete for allowed values list: This widget can be used for Text and Number fields and it takes candidate values from the defined list of Allowed values of the fields. You can even generate your allowed values list using PHP, so the limit to provide a widget with autocomplete features is your imagination!
  • Autocomplete for existing field data: This widget can be used for Text only and it takes candidate values from existing values in the database for that field.
  • (7.x only) Autocomplete for predefined suggestions: This widget can be used for Text only and allows an admin to provide a list of suggestions but still allows users to enter anything they want in a text field. Use this widget to help avoid (but not prevent) variations of the same value. Ex: burger, hamburger, Burger ...
  • (7.x only) Autocomplete for existing field data and some node titles: This widget works just like the "existing field data" widget above except it will also suggest node titles for nodes of a specific content type(s).

All widgets allow you to choose the size of the text element and the method used to match values between 'Starts with' and 'Contains'. You can also enable case sensitive or insensitive matches option. Note however that MySQL may ignore case sensitivity depending on the collation used in your database definition.

When the Internationalization module is enabled, the 'Autocomplete for existing field data' widget also provides an option to filter values by the language assigned to their corresponding nodes. This option allows you to provide a different set of allowed values per language.


Location Feeds

This module provides location mappers for the Feeds module and is compatible with both CCK and location module location fields.

Degrees, minutes, seconds notation is supported for latitude and longitude sources provided the values are numeric.

Simple GeoRSS support is available for georss:points (http://georss.org/simple)



This module provides a "colorpicker" form element for CCK forms, and also for module developers to utilize. A colorpicker field is a textfield with a colorpicker button that brings up the Farbastic color widget that comes included with Drupal. (Support for additional third-party color pickers is planned.)

To use this module, simply enable it. Colorpicker-aware modules will then display a colorpicker field instead of a plain textfield where appropriate. And as a site creator making new content types, you now have a CCK colorpicker field at your disposal.


Node Relationships

Example of the ERD provided by the Node Relationships module

The Node Relationships module provides methods to complete two way relationships between content types enhancing the features of node reference fields.

It provides the following features:

  • Enhancements for node reference fields: "View reference in new window", "Edit reference" (in modal frame, updates widget if node title changes), "Search and reference view" (single and multiple selection based on dynamically configured views), "Create and reference" and "Translate and reference" (when the Drupal core translation module is enabled, with additional support for Internationalization module). These features use the Modal Frame API to provide popup dialogs from buttons attached to node reference fields configured to use the autocomplete widget.
  • Automatic back references using dynamically configured views that are able to extract the relations from existing database information. This views can be rendered using a myriad of methods in the node view.
  • The Node Relationships module provides default views for each feature that can be modified and/or cloned (recommended) should you need to add more fields, filters or change any other option to suit your needs.
  • Basic entity relations diagram (ERD) that can be used to view the relations of each individual content type. The provided diagram can be used to walk the relationships of all types in the system.

More information in the project page.

This module has been sponsored by Gamefilia.


SoundCloud field

SoundCloud field module 7.x-1.x provides a field for inserting a SoundCloud track or set
SoundCloud field module 6.x-1.x provides a CCK field

- configurable player
- 3 player types: Flash player / HTML5 player / (new) Visual player


Multi-column checkboxes radios


Display checkboxes and radios in columns in CCK, webform or FAPI elements.


CCK: Multicolumn option settings is in the field configuration screen of field types text, nodereference, userreference, content taxonomy and Select or other if they use the check boxes/radio buttons widget. See README.txt on how to add additional CCK widget type support. If you find any other CCK widget type can be supported, please report in issue queue so they can be added.

Webform: See #946956: Implement alter() hook to allow external module to extend existing components?

Form API: in the definition of checkboxes/radios form element, add the '#multicolumn' property to the checkboxes or radio buttons form element definition:

$form['my_checkboxes'] = array(
'#type' => 'checkboxes',
'#multicolumn' => array('width' => 3),
$form['my_radios'] = array(
'#type' => 'radios',
'#multicolumn' => array('width' => 5,
'row-major' => TRUE,
'indent' => 3,
'caption' => t('December'),
'column-heading' => array(t('Mon'), t('Tue'), t('Wed'), t('Thu'),


Nodereference Count

This is a CCK (Drupal 6) / Field API (Drupal 7) field type that will count the number of nodereferences to a particular node. The count is updated both when the node that is being counted is saved, as well as when a node that is referencing the node being counted is saved, updated or deleted. It will count references from individual nodereference fields as well as aggregate counts from multiple nodereference fields to the same node.

Also see Entity reference count for a version of this module that works with entity references.


Feeds Image Grabber

Feeds Image Grabber

Feeds Image Grabber (FIG) is successor of FeedAPI ImageGrabber, an addon for Feeds module, which grabs image for each feed-item from their respective webpages and maps it to an image field in the node created by Feeds (Node Processor).

[Google Reader (with thumbnails) can be imitated on a Drupal site by using Feeds, Feeds Image Grabber, FileField, ImageField, ImageCache, ImageAPI, Views and Voting API module (http://goo.gl/J5MJg)]


  • Automatically downloads and attaches image to the node created by Feeds module.
  • Configurable XPath of the desired image location on the webpage of the feed item on per feed basis (using element's id or CSS class).
  • Support for FileField Paths module.
  • Configurable maximum image size.
  • Configurable minimum and maximum image resolutions.
  • Configure defaults for FIG from the settings page.


  • Better error logging and reporting.
  • Integration with Views to grab images for only selected feed items.

Please do not open issues in the queue that request features already on the roadmap.


CCK Fieldgroup Tabs

For Drupal 7, see the Field group module, which includes tabs support.

Display CCK fieldgroups in tabs. Enables splitting up content onto tabs in both editing and display.

Requires Tabs module as well as Content and Fieldgroup modules, part of CCK. For Drupal 5.x, Tabs module is part of Javascript Tools. For Drupal 6.x, Tabs is a separate module.

Note: if upgrading from the dev version to a stable release, ensure first that you have installed the latest stable release of Tabs.

To use, install and enable the module, then navigate to content type administration at Administer » Content management » Content types. Create one or more fieldgroups for a content type and assign fields to the fieldgroup or use existing fieldgroups.

Each fieldgroup can be displayed on a tab. (It really only makes sense to do so for more than one, since a single tab serves no purpose.)

To get fieldgroups to display on tabs on content editing forms, select "tabs" as the "style" when configuring a fieldgroup under "Manage fields" for the content type in question.



NodeReferrer provides a counter part to CCK's nodereference field. The options for a NodeReferrer field allow you to select content types and field instances to match when creating back reference lists.

Similar modules


Double field


What is Double field?

Double field is a small module written to provide extensions to Drupal's core Fields. By this module you can split your fields up into two separate parts.

For the moment it includes the following sub-widget types:

  • Textfield
  • Select list
  • Single checkbox
  • Textarea

Consequently, in all there are 4 x 4 = 16 widget types.

Use cases


Imce CCK Image

Imce CCK Image

Provide a CCK field type that lets you choose a file with IMCE.
This is not the same as FileField (see below).

Drupal 7

The core files management on D7 is smarter than on D6.
imceimage is designed to circumvent the file_managed table, but in D7 this is no longer necessary. You can use either filefield sources, or (recommended) IMCE Filefield

New maintainer (29 Nov 2011)

This module is no longer "deprecated".
See #703716: Offering to maintain Imce CCK Image

As the new maintainer, I plan to

  • Fix any problems I run into myself (update: bad idea, now my use case for this module went to d7).
  • Be responsive on the issue queue (update: if people provide me patches and do some debugging on their own.)
  • Allow a co-maintainer to jump on the boat, if someone is interested.
  • Improve code quality. -> done.
  • Recent work will go into a new branch (6.x-2.x). -> done.
  • Explain the difference to Filefield sources -> done.

There are no particular bugs I want to fix (yet), I just want this module to be not abandoned.

IMCE CCK Image vs Filefield Sources

There is an alternative to this project,



A CCK content field which lets you add a complete iframe to your content types; including Src-URL, setting width and height, optionally a title above, and optionally a target attribute.

Requires the content module (CCK).

The module iframe ist based upon project Link by quicksketch

The iframe module provides a content "field" type for CCK. It provides three fields to an authorized user:


Grid Field Formatter

Configuration page for the formatter: enable Grid Field Formatter with a number

As an attempt to provide a solution to:

How do I format a multi value field as a grid?

the Grid Field Formatter module provides a simple way to overridde the display of multi-value fields to show as a grid/table with a certain number of columns.

This module has no pretention of implementing any field: it is not a Table field, such as TableField, or CCK Table Field.
It's just a formatter (display) to render multi-value fields with a grid/table layout instead of a list of items.

The idea behind this is to provide a simple solution, easy to use, setup, with few dependencies and trying to leverage the formatter hooks provided by #945524: Field formatter settings hooks in core to extend existing field formatters.


The code is very similar to other modules built on top of Field formatter settings, such as Linked field or Field formatter class, and it implements hook_field_formatter_settings_form_alter to add configuration options to existing formatter settings forms.


CCK Select Other

Conditional Select Field Example

CCK Select Other introduces an alternative select list widget that provides a user with either a select list or text input.


Button Field

Button Field Example

Adds a button field type for use with any fieldable entity type and Rules. Provides two different widgets: HTML Button and Image Button. Adds a new button click event, clicked button comparison, and reload page action for use with rules. When the button is clicked, an AJAX call is used to run the event. Using rules you could display a message to the user, alter some data on the entity (or another entity) and reload the current (or any other) page.


Node Connect

Node Connect expands the node reference (of the references project) auto-complete field by adding a add new content and edit current content button.

The add a new button will all a new node to be added via a node add form and then return the user to the original form.

The edit button will take the user to the edit form of the referenced node, and return them when they are done editing.




Multistep adds multiple-step functionality to content type editing forms. It does so by assigning a step number to each fieldgroup within the content type and hiding all the groups that do not belong to the current step. The user can then use different submitting buttons that will redirect to the previous, next, or current step.


Smart Paging

Smart Paging settings

Provides splitting up long Drupal content into sub pages by number of characters/words or by a placeholder HTML tag for node, user and taxonomy term entities.


Role Reference

Adds a (CCK) field type for referencing user roles as a field in (CCK) content types. Also has Views, Content Migrate, and Field Extract Values integration.


Computed Field Tools

Computed Field Tools (Drupal 7) Batch running

The problem

The Computed Field module only updates its computed values on saves or on load (if no computed value is computed yet). This is not optimal when using computed values in lists etc., or if you should wish to change the logic in the computed field.

The solution

If you wish to avoid re-saving all the entities/nodes using the computing field, you can use this tool to re-compute all the values again.

The computed field tools module offers a way to re-compute the computed fields of existing entities/nodes. It does so through the Batch API.

When the batch is running it does not save the entire entity/node, but it only saves the computed field. This make it a fast way of updating the content.


  • Fast processing of all computed fields.
  • Select specific computed_field to process.
  • Select content types to process for selected computed field.
  • It processes ALL entities/nodes. Also the ones with no value computed yet.
  • Drupal 6 supported content: nodes.
  • Drupal 7 supported entity types: nodes, users, terms.
  • Since we don't do an entity_save() we don't clear the cache on every(!) node processing and no search index updates are triggered, so there is a huge performance advantage here on high traffic sites over the VBO way.


Formatted Number


The Formatted Number module defines numeric types where thousands separator and decimal point are inherited from the Format Number API module.

Numeric types supported: signed or unsigned integers (tiny, small, medium, int), decimal and float.

Builtin integration support for: Views, Diff, Token.

Maintained by kenorb and cweagans.

Additional field formatters

You can easily add additional formatters adding the following lines to your settings.php file:

// Additional formatters for fixed number of decimal places.
$conf['formatted_number_decimal_place_formatter_lengths'] = array(0, 1, 2);

// Additional formatters for fixed number of significant figures.
$conf['formatted_number_significant_figure_formatter_lengths'] = array(1, 2, 3, 4);

Be sure to rebuild your theme registry after changing these options.

How can you get involved?


Node Reference Create

Unmatched entries are automatically created and referenced

Node Reference Create is an enhancement to the nodereference autocomplete widget that allows users to reference non-existent nodes.

When no matching node is selected, the new nodes are automatically created allowing for a seamless and intuitive user experience that is similar to free tagging.

If you are unfamiliar with CCK or using the Nodereference field, check out the CCK Documentation.


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.


CCK Time

This is a simple text-field widget that allows entry of times in 24-hour or 12-hour notation. It uses select dropdowns, and allows you to configure the minutes increment.

This module was initially developed by OpenConcept but has been upgraded thanks to efforts by Everett Zufelt.