Drupal Important Modules
Tags: php, modules, drupal
Published: 2022-07-11 11:37:09

Add functionality and customize your Drupal application with thousands of projects contributed by our amazing community.

**[Client-side Hierarchical Select] (https://www.drupal.org/project/cshs)**
Using to make dependents selection tree parent child [Video](https://www.youtube.com/watch?v=jq7p98wXWkA)

**[Role Delegation] (https://www.drupal.org/project/role_delegation)**
This module allows site administrators to grant specific roles the authority to assign selected roles to users, without them needing the administer permissions permission. [Video](https://www.webwash.net/control-roles-assigned-in-drupal-using-role-delegation/)

**[Chosen] (https://www.drupal.org/project/chosen)**
Chosen uses the Chosen jQuery plugin to make your <select> elements more user-friendly.

**[Metatag] (https://www.drupal.org/project/metatag)**
The Metatag module allows you to automatically provide structured metadata, aka "meta tags", about a website. In the context of search engine optimization, when people refer to meta tags, they are usually referring to the meta description tag and the meta keywords tag that may help improve the rankings and display of a site in search engine results
[Video](https://www.youtube.com/watch?v=ttqVerZfWE0)

**[Rest UI] (https://www.drupal.org/project/restui)**
A user interface for configuring Drupal 8's REST module.
This module provides a user interface for enabling and disabling resources, serialization formats, and authentication providers.

**[Image URL Formatter] (https://www.drupal.org/project/image_url_formatter)**
This module adds a URL formatter for the image field. Then you can output image URL directly.
[Patch for get filename] (https://www.drupal.org/project/image_url_formatter/issues/2168719#comment-14616720)

**[Config Ignore] (https://www.drupal.org/project/config_ignore)**
This module is a tool to let you keep the configuration you want in place. and ignore config files you don't need to upload it.

**[Quick Node Clone] (https://www.drupal.org/project/quick_node_clone)**
Quick Node Clone is meant as a way in Drupal 8/9 to clone nodes.
The module adds a "Clone" tab to a node. When clicked, a new node is created and fields from the previous node are populated into the new fields. [Video](https://www.youtube.com/watch?v=u1JJ91HMg2Q&list=PLSd4y-3qTtI1pHhXnbRc4tCNE9ZZgDjN5)
[Content Export CSV](https://www.drupal.org/project/content_export_csv)
This module is used to export your content of a specific content type as a CSV file.

**[Workflow] (https://www.drupal.org/project/workflow)**
This module enables you to create arbitrary Workflows and assign them to Entities. [Video](https://www.youtube.com/watch?v=HiwPSIFu3Ec&list=PLSd4y-3qTtI1pHhXnbRc4tCNE9ZZgDjN5&index=4)

**[Entity Construction Kit (ECK)] (https://www.drupal.org/project/eck)**
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.
[Video](https://www.youtube.com/watch?v=lcwQhJCFNjQ&list=PLSd4y-3qTtI1pHhXnbRc4tCNE9ZZgDjN5&index=6)

**[Structure Sync](https://www.drupal.org/project/structure_sync)**
Structure sync provides Drush commands and admin interface screens for synchronizing content that could also be considered configuration. Including menu items, custom blocks and taxonomy terms. [Article](https://www.specbee.com/blogs/export-import-menus-customblocks-taxonomies-drupal9-8-structure-sync-module)


**[No Current Pass](https://www.drupal.org/project/nocurrent_pass)**
This module makes the "current password" field on the user edit form optional.

**[User registration password](https://www.drupal.org/project/user_registrationpassword)**
Let users register with a password on the registration form when verification mail is required.

**[Email Registration](https://www.drupal.org/project/email_registration)**
Allow users to register using an email address. Users can then log-in using their email address and password for authentication.

**[Single content sync](https://www.drupal.org/project/single_content_sync)**

**[Persistent Login](https://www.drupal.org/project/persistent_login)**
The Persistent Login module provides a "Remember Me" option on the user login form.

**[Redirect](https://www.drupal.org/project/redirect)**
Provides the ability to create manual redirects and maintain a canonical URL for all content, redirecting all other requests to that path.

**[Login Destination](https://www.drupal.org/project/login_destination)**
The Login Destination module allows you to customize the destination that a user is redirected to

**[Webform Views Integration](https://dev.to/mahmoudsayed96/drupal-important-modules-4nef)**
Show webform submissions data in views.
Use Webform Views Integration module to expose Webform submissions to Views (Webform is a module for making forms and surveys in Drupal).

**[View Password](https://www.drupal.org/project/view_password)**
This is a lightweight, user-friendly module that allows a user to toggle between showing or hiding the entered password before submitting the form.


**[User registration password](https://www.drupal.org/project/user_registrationpassword)**
Let users register with a password on the registration form when verification mail is required.

**[Simple Password Reset](https://www.drupal.org/project/simple_pass_reset)**
This modules simplifies the password reset process.

Without this module enabled, core Drupal prompts the user to log in via a one-time login form. After clicking "Log in", the user is brought to their profile edit form where at long last they can change their password.

**[Video Embed Field](https://www.drupal.org/project/video_embed_field)**
Video Embed field creates a simple field type that allows you to embed videos from YouTube and Vimeo and show their thumbnail previews simply by entering the video's URL.

**[Filter Permissions](https://www.drupal.org/project/filter_perms)**
This module provides filters at the top of the Permissions page for easier management when your site has many roles and permissions.

**[External Links](https://www.drupal.org/project/extlink)**
External Links is a small module used to differentiate between internal and external links. Using jQuery, it will find all external links on a page and add an external icon indicating it will take you offsite or a mail icon for mailto: links.

**[Social API](https://www.drupal.org/project/social_api)**
Social API harmonizes authentication with external social services in Drupal, providing an extensible module that allows integration of modules for user authentication, auto-posting, and any tasks that require authentication with external providers.
videos: [Google](https://www.youtube.com/watch?v=tIGIqZFWu9U&t=8s&ab_channel=DrupalAcademy) - [Facebook](https://www.youtube.com/watch?v=3hq-fk5lDcY&ab_channel=DrupalAcademy)

**[IP2Country](https://www.drupal.org/project/ip2country)**
This module uses a visitor's IP address to identify the geographical location (country) of the user. The module makes this determination and stores the result as an ISO 3166 2-character country code in the Drupal $user object but otherwise does not affect the operation of your site. The intent is simply to provide the information for use by other modules. A function is also provided for you to perform your lookup, to use in your manner. Features include automatic updates of the IP-country database and admin spoofing of an arbitrary IP or Country for testing purposes.

**[User Account Protection modules](https://www.hashbangcode.com/article/drupal-10-adding-extra-user-account-protection)**

**[Login Switch](https://www.drupal.org/project/login_switch)**
This module will allow you to change the default login URL and disable the normal /user/login route built into the core. Hackers today know all the usual entry points for the common CMS systems so the first step to securing your site is to change the entry they know about.

**[Simple News](https://www.drupal.org/project/simplenews)**
Simplenews publishes and sends newsletters to lists of subscribers. Both anonymous and authenticated users can opt-in to different mailing lists. 

**[Firebase Push Notification (FCM)](https://www.drupal.org/project/firebase)**
Firebase implements a service to send push notifications to Android or iOS devices.
It uses Google's Firebase Cloud Messaging to deliver the notification.

**[IMCE](https://www.drupal.org/project/imce)**
IMCE is an image/file uploader and browser that supports personal directories and quota.

**[Recurring Events](https://www.drupal.org/project/recurring_events)**
The plug-and-play recurring events and registration system for Drupal.
The Recurring Events module is a Drupal 9 and 10 plug-and-play recurring events and registration system designed to be site-agnostic and extensible. Detailed information about the module is available on the module's external documentation page.

**[Fullcalendar View](https://www.drupal.org/project/fullcalendar_view)**
This View plugin module provides a calendar view format powered by the FullCalendar JavaScript library.

**[JSON:API Include](https://www.drupal.org/project/jsonapi_include)**
JSON API Include allow merge include and relationship data of JSON API.
Use case:
- Show all data related output content type.
- Use directly data of relationships to import content with Migrate.