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.
The Panels module allows a site administrator to create customized layouts for multiple uses. At its core it is a drag and drop content manager that lets you visually design a layout and place content within that layout. Integration with other systems allows you to create nodes that use this, landing pages that use this, and even override system pages such as taxonomy and the node page so that you can customize the layout of your site with very fine grained permissions.
Integration with CTools module
Panels 3 utilizes the CTools' system of "context" so that the content you place on the page can be aware of what is being displayed. For example, in the existing Drupal setup, a block has no real knowledge of what the primary page is displaying. There are all kinds of tricks and tools you can use to get information to the blocks, but this generally means writing PHP code to scan the URL and pull the data out, which is not a very good thing when that data should already exist.
The Media module provides an extensible framework for managing files and multimedia assets, regardless of whether they are hosted on your own site or a 3rd party site - it is commonly referred to as a 'file browser to the internet'.
Media is a drop-in replacement for the Drupal core upload field with a unified User Interface where editors and administrators can upload, manage, and reuse files and multimedia assets. Any files uploaded before Media was enabled will automatically take advantage of the many of the features it comes with.
Media's aim is to solve Drupal's long standing media handling problem.
This module augments Views by allowing bulk operations to be executed on the displayed rows. It does so by showing a checkbox in front of each node, and adding a select box containing operations that can be applied. Drupal Core or Rules actions can be used.
Fieldgroup will, as the name implies, group fields together. All fieldable entities will have the possibility to add groups to wrap their fields together. Fieldgroup comes with default HTML wrappers like vertical tabs, horizontal tabs, accordions, fieldsets or div wrappers.
Checks the current URL for an alias and does a 301 redirect to it if it is not being used.
Checks the current URL for a trailing slash, removes it if present and repeats check 1 with the new request.
Checks if the current URL is the same as the site_frontpage and redirects to the frontpage if there is a match.
Checks if the Clean URLs feature is enabled and then checks the current URL is being accessed using the clean method rather than the 'unclean' method.
Checks access to the URL. If the user does not have access to the path, then no redirects are done. This helps avoid exposing private aliased node's.
Make sure the case of the URL being accessed is the same as the one set by the author/administrator. For example, if you set the alias "articles/cake-making" to node/123, then the user can access the alias with any combination of case.
Most of the above options are configurable in the settings page. In Drupal 5 you can access this after enabling the globalredirect_admin module. In Drupal 6, the settings page is bundled into the module.
Context allows you to manage contextual conditions and reactions for different portions of your site. You can think of each context as representing a "section" of your site. For each context, you can choose the conditions that trigger this context to be active and choose different aspects of Drupal that should react to this active context.
Think of conditions as a set of rules that are checked during page load to see what context is active. Any reactions that are associated with active contexts are then fired.
Strongarm gives site builders a way to override the default variable values that Drupal core and contributed modules ship with. It is not an end user tool, but a developer and site builder tool which provides an API and a limited UI.
Display Suite allows you to take full control over how your content is displayed using a drag and drop interface. Arrange your nodes, views, comments, user data etc. the way you want without having to work your way through dozens of template files. A predefined list of layouts (D7 only) is available for even more drag and drop fun!
By defining custom view modes (build modes in D6), you can define how one piece of content should be displayed in different places such as teaser lists, search results, the full node, views etc.
Drupal 6 users: jQuery 1.3.x or higher. (sfTouchscreen in the Master branch of the Superfish library requires at least jQuery 1.4.)
Drupal 7 users: jQuery 1.6.1 or higher, only if you want to use the jQuery Easing plugin animation effects.
For jQuery 1.9 and above you should either manually include the jQuery $.Browser plugin, via your theme .info file for example, or use the latest development release with the master branch of the Superfish library, which checks $.browser before using it. (Note the superfish.js for Drupal 8 won't include the IE6\7 hack hence no $.browser trouble!)
The advanced help module allows module developers to store their help outside the module system, in pure .html files. The files can be easily translated simply by copying them into the right translations directory. The entire system can appear in a popup or not as the module prefers (and by taking away access to view the popups, a site can force the popups to not exist).
This module will display any Views date field in calendar formats, including CCK date fields, node created or updated dates, etc. Switch between year, month, and day views. Back and next navigation is provided for all views. Lots of the Calendar functionality comes from the Date module, so any time you update the Calendar module you should be sure you also update to the latest version of the Date module at the same time.
See also Date iCal, a project that contains code and features needed to either import or export dates using iCal feeds. The functionality that used to be in the Calendar iCal module has been moved into that module.
Be sure to read Debugging Information before reporting a problem. Going through those steps may resolve your problems and will help provide enough information to tell if this is a bug.
This project provides D7 versions of the 'node_reference' and 'user_reference' field types, that were part of the CCK package in D6, at functional parity with the D6 counterparts. See http://drupal.org/node/533222 for details.
Note for users upgrading from References 7.x-2.0-beta3
There were a couple changes in the way 'References' views are handled ("referenceable nodes/users defined by a view"), which might require double-checking those existing on your site:
The 'label' (node title or user name) is no longer automatically added if not included in the view. If some of your 'References' views currently do not include it, you might want to add it explicitly, else it will no longer appear in the widgets.
The HTML generated by the view is no longer stripped out before being handed to "checkboxes / radios" widgets, thus allowing advanced formatting. You might want to check for Reference views having fields configured to display "as links", since the (probably unwanted) <a> tags generated by Views are not removed anymore.