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 link module provides a standard custom content field for links. With this module, links can be easily added to any content types and profiles and include advanced validating and different ways of storing internal or external links and URLs. It also supports additional link text title, site wide tokens for titles and title attributes, target attributes, css class attribution, static repeating values, input conversion, and many more.
Drupal 7: Fields API is provided already by core [no dependencies].
Drupal 8: Link module is in core now. No module installation needed. Yay! Don't forget to activate it. It's deactivated by default.
INFO Since some misleading user reports we need to clarify here - Link module is NOT about to add links to any menus or the navigation nor primary/secondary menu. This can be done with default menu module (part of Drupal core). The Link module provides an additional custom field for storing and validating links to be added with any content type, which means another input block additional to your text-body, title, image and any other input you can make on new content creation.
Special menu items is a Drupal module that provides placeholder and separator menu items.
A placeholder is a menu item which is not a link. It is useful with dynamic drop down menus where we want to have a parent menu item which is not linking to a page but just acting as a parent grouping some menu items below it.
A separator menu item is something like "-------" which is not linking anywhere but merely a mean to structure menus and "separate" menu items visually.
Three styles/types of menus are currently possible: horizontal, menus drop down; vertical, menus fly to the left; vertical, menus fly to the right. There is a handbook page that provides a list of sites that use Nice menus.
Nice Menus creates blocks that may be associated with any existing site menu which can be placed wherever normal blocks can be placed in a theme. For themers, it is also possible to theme a menu as a Nice Menu directly by using the provided theme functions so a block is not necessary. A specific theme function for the Primary Links menu is available. The theme functions also allow a developer to pass in a custom menu tree of their making (i.e. not using a Drupal menu.) There is more information on how to use theme functions in the documentation.
Share buttons for Drupal including AddToAny's universal sharing button, Facebook, Twitter, Google+, Pinterest, WhatsApp and many more.
Large vector share buttons use AddToAny SVG sharing icons. AddToAny vector icons load efficiently, are mathematically precise, scalable to any size, and stunning on High-PPI screens such as Retina and Retina HD displays.
Menu Trail By Path sets the active-trail on menu items according to the current url.
For example if you are at yoursite.com/blog/category1/article1
Menu Items with these paths will get the active-trail class on them and expand accordingly.
This is particularly useful if you want a lot of nodes to appear as children of certain nodes / taxonomy term / views / referenced nodes / etc, but do not want to add them all to the menu. eg. hundreds of blog articles.
A module to control when the teaser Read More link appears in Drupal 7.
There is no mechanism in core to decide if the read more link should appear. This means that this link will always show no matter if there is additional content to display. This module tries to overcome this issue by allowing administrators to determine how to handle this link in relation to both the content type and individual fields.
The module allows you to add Read more links to other supported view modes (RSS feed, Search results, etc) or even other supported entity types. Particularly useful if you use panels or views and either programmatically add additional view modes or use other contrib modules to provide these.
This module allows you to upload an image in the menu-item's configuration form.
After uploading the image, the icon data will be added to the menu link's
When a menu link is goes through the theme layer, it will receive an extra
class which by default is used to attach the images as a background image to the
corresponding menu item. These class names are also compatible with Nice Menu's.
This module allows you to write modules in pure OOP syntax. It becomes handy when you need some kind of "aspects" to inweave into the main functionality of your module. Moopapi does it by Decorator pattern. Currently we have these types of decorators implemented:
- Logger: allows to log every method calling together with all parameters passed. A mighty tool for development and debugging in some circumstances.
- Cacher(planned, see #1870060: Create new decorator: Cacher): The idea is to separate a logic of an application and tricks to make it work faster. It could be done by Cacher "aspect" which includes all speed optimizations while your application contains pure business logic.
- Adapter: Abstraction layer for Drupal major version. The concept is thoroughly described here: #1932290: Forwardport doctrine - a proposed solution for Drupal major version migration problem. See 4.x branches of BOTCHA project (D6 & D7) together with common part x.x-1.x as an implementation of such audacious approach.
The Floating block module allows you to keep html blocks, selected using jquery selectors in a fixed position on the page as you scroll. It works in a similar way the table header fixer in Drupal Core. This means that when the user scrolls their browser selected parts of the page can stay in the users view.
Tips for using jQuery selectors
Using the default Garland theme in Drupal 6 example selectors would be: #sidebar-left Float the left sidebar .primary-links Float the primary menu .block-user Float the user login block
The important thing is to look at the html drupal is generating for your page and look at the id or class of the element your want to float. Find out more about jQuery selectors... Additionally another very useful tool (if you are using Firefox) is Firebug.
"Maximize your main navigation by adding text, images, videos, slideshow, tabs, menu blocks, user info ..."
That is now possible by using OM Maximenu which can create menus with all other module blocks you want as attachments, modules like views, slideshow, menu, user, nice menus, quicktabs, and custom blocks with tables, lists, images, videos, etc.
For OM Maximenu advanced editing, install OM Tools 2
The Block Attributes module allows users to specify additional HTML attributes for blocks, through the block's configuration interface, such as class, id, style, title and more.
It appeared the ability for users to configure Blocks' HTML ID, classes or custom styles has been a recurring request (for quite some time). Therefore, this module attempts to provide a solution for these cases and support more HTML attributes for blocks.
Mega menus are a type of drop-down, which seeks to overcome some of the usability drawbacks of traditional drop-downs. Hierarchy of your navigation is made visible all at once and the amount of clicking, searching, and navigating is reduced.
This module allows you to build mega menus by leveraging jQuery and the existing Drupal menu system. Megamenu takes a Drupal menu that is 3 levels deep, and converts it into a categorized 3-level mega menu, which is placed into your site as a block.
This module is a greenhouse for Rules functionality – triggers, actions and conditions that could be included in the Rules module, but probably should be tested out and voted on first. Feel free to add your own ideas, opinions, examples and feature requests!
Note 1: I do not plan to make a stable release of this project. It is a greenhouse for building and trying out new functionality for Rules, and should always be open for new and untested ideas.
Note 2: The Views integration in this kind of broken. It will be rewritten, but that has not started yet. If you want to use Views to load entities into Rules, I recommend Views Bulk Operations. See the VBO chapter at http://dev.nodeone.se/node/984 for a tutorial on how to do this.
The usual. Download, enable. You will need the Rules module. (Surprise!)
Now for D7 too! This is a very simple module that takes the link text of each drupal menu item and adds it as a css class name to the menu's <li> element. Using these class names, each menu item can be styled separately with css. This is also very useful for css sprite techniques.