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.
A small module that lets you control the format of the "Submitted by" information on your content per content type. It adds a fieldset to your node edit form called Appearance that lets you put in a tokenized pattern for the text you want to display.
Depends on Token module. Note: This module does not create any data; rather it relies on other modules providing that data through Token.
You might find the Custom Tokens module useful for things that aren't already provided.
FileField Sources Plupload lets you add Plupload (a multiple files/multifile upload widget) as a source to any file field supporting FileField Sources.
Plupload is a GPL licensed multiple file uploading tool that can present widgets in Flash, HTML5, Silverlight, and HTML4 depending on the capabilities of the client computer.
By using FileField Sources to add Plupload as a source, multiple file uploads can be achieved on regular File and Image fields using the standard widgets as well as a range of contributed field widgets supporting FileField Sources. This includes cropping widgets, like the excellent Manual Crop.
Multiple file uploading across a wide range of browsers
Increased speed using chunked file uploads
Maximum file size can be set larger than PHP limits
Compatible - does not require its own wiget
Client side (as well as server side) file validation
jQuery based Horizontal scrolling lines with options: Direction, speed
Note: Scroller (JScroller) is available in 7.x-1.x only. liScroller is available in 6.x-2.x & 7.x-2.x. JScroller is replaced with vTicker & liScroller. Support for JScroller will be dropped going forward.
This module enables granular publish and unpublish permissions which allows you to grant roles on your site the ability to publish or unpublish specific content types without having to give them the administer content permissions. This is a lightweight solution to managing your content workflows.
This simple module displays just one location map via Google Maps, for brochure and company profile web sites.
#D7CX: As pledged, Location Map module had a full Drupal 7 release on the day that Drupal 7 was released.
Location Map will:
create a Google Maps page with a marker on your location based on an address you supply. The map provides options for map view, satellite view, and a hybrid mode. It has the standard Google Maps features that users can zoom and drag to temporarily change the focus of the map. The size of the map can be configured in the admin interface. In v1.0, a node is created for this map at /locationmap, which can be aliased to any address you choose.
allow anyone given administrative approval for the module to drag-and-drop the map location marker for fine-tuning its position, if initial automatic geolocating from address information was not accurate.
create a block with a static image of the centre of your map, which links to the larger map.
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.
The Custom Formatters module allows users to easily create custom Field Formatters without the need to write a custom module. Custom Formatters can then be exported as CTools Exportables, Features or Drupal API Field Formatters.
Pluggable editor/renderer engines:
Create simple formatters from existing formatters with preset formatter settings.
HTML + Tokens
A HTML based editor with Token support.
A PHP based editor with support for multiple fields and multiple values.
A Twig based editor provided by the Twig filter module.
Supports for all fieldable entities, including but not limited to:
Drupal core - Comment, Node, Taxonomy term and User entities.
Field collection module - Field-collection item entity.
Media module - Media entity.
Drupal API formatter via:
Custom Formatters export interface.
CTools exportable via:
Custom Formatters export interface.
CTools Bulk Export module.
Live preview using real entities or Devel Generate.
Review your Custom Formatter code for Drupal coding standards and more.
Contextual links(Drupal core)
Adds a hover link for quick editing of Custom Formatters.
Format Display Suite fields.
Adds dependent Custom Formatters (from Views or Content types) to Feature.
Drag'n'Drop interface for builder Formatter Settings forms.
Exposes Custom Formatters to the Insert module.
Adds real-time syntax highlighting.
Adds the Token tree browser to the HTML + Tokens engine.
Video.js is a HTML5-based video player with a built-in Flash fallback for older browsers. This means that videos can be played on nearly all devices and operating systems, provided the right codecs are used.
This module is a support module for Video.js. It doesn't contain Video.js itself, but integrates it with the File, Link and Video modules after you've installed it.
Date iCal is your one-stop shop for iCal support in Drupal. It provides a plugin for Views to enable exporting your site's calendar as an iCal feed, and a plugin for Feeds to enable importing external iCal feeds into your site's calendar.
The Contact form blocks module makes your site-wide contact forms available as Drupal Blocks.
Using this module you can show your contact forms at any place where you can show a Drupal Block. For instance you may add a contact form to the right sidebar of your website which should be shown at every page. Or you want to add another contact form (aka category) to a certain node only. Add the contact form block to the content region and use the Block visibility settings to hide it from all pages but that special one.
This module adds clientside validation (aka "Ajax form validation") for all forms and webforms using jquery.validate. The included jquery.validate.js file is patched because we needed to be able to hide empty messages.
#D8CX: I pledge that Clientside Validation will have a full Drupal 8 release on the day that Drupal 8 is released.
"Automatic Entity Label" is a small and efficient module that allows hiding of entity label fields. To prevent empty labels it can be configured to generate the label automatically by a given pattern.
This can be used on any entity type, including e.g. for node titles, comment subjects, taxonomy term names and profile2 labels.
Patterns for automatic labels can be constructed with tokens. Drupal core provides a basic set of tokens. For a token selection widget install the token module. Some entity types (e.g. profile2) provide tokens via the entity_token module (part of entity).
Advanced users can use PHP code for automatically generating labels.
Commerce Addressbook is a module that allows authenticated customers to reuse
previously entered addresses during checkout.
They can manage all entered addresses in their user panel (user/%user/addressbook).
Note that for data consistency reasons editing a previously entered address
won't change it on previously made orders.
AdSense for Search and Drupal are incompatible as both use the 'q' query for different purposes. Using this module, you can display the search results in your site.
Protects you from displaying more ads in a page than the maximum allowed by Google (check current disabled)
The module provides easy-to-use ad blocks.
You can easily disable the ads for certain roles.
Provides simple controls for troubleshooting the ads before going live with the site.
If Google changes some minor details in the script, your code can be updated site-wide just by upgrading the module.
If you want to do ad revenue sharing, there's really no other option
Why shouldn't you use it:
Strictly speaking, this module is not in compliance with the AdSense TOS, since you're not exactly copy-pasting the script code in your site. No one has ever reported being banned because of using this module, and Google knows of its existence, and seem not to mind.
Panels Everywhere is an advanced method to completely do away with Drupal's restrictive blocks system and instead use the much more freeing Panels Layout system to control how your pages look. Panels Everywhere modifies the page as it is being rendered to 'wrap' the content in a display and can even take over your page theme to do away with the need for a page.tpl.php.
Doing this requires that you set up a few things properly, because Drupal is not really designed for this kind of behavior. Be sure to read the README before trying to use this module.
The Entity Construction Kit (ECK) builds upon the entity system to create a flexible and extensible data modeling system both with a UI for site builders, and with useful abstractions (classes, plugins, etc) to help developers use entities with ease.
ECK allows the creation and management of entity types with custom properties; adding bundles to entity types; and fields to bundles, with the help of the Field UI module.
IMPORTANT: The Isotope library is GPLv3. According to the site, it may be used in non-commercial and personal applications for free, but commercial use requires/requests a $25 license. Since you can't really put limitations on what someone can do with GPL code, we'll leave it up to you to decide whether to pay for a license or not. You can find more details http://isotope.metafizzy.co/docs/license.html
The way the sort and filtering are configured is different than @funkym's D6 module. Instead of configuring that in the View settings for the Isotope Grid, we configure the fields to filter by adding a class of isotope-filter in the View Style Settings. An additional View using the Isotope Filter Block View Style is required to make the Isotope function. Using blocks for the filter and sort made sense to us since in our layout we wanted the filter UI in a different region than the View.