Faq | Innoraft Skip to main content

Search

Frequently asked questions

FAQ

Frequently asked questions

Organizations that need multi-channel content delivery, want to leverage modern frontend frameworks, or require top-tier performance and scalability are strong candidates.

In many cases, yes. By decoupling, the frontend can be optimized independently—often deployed as static files on a CDN—resulting in faster load times and better SEO performance.

Yes, it typically requires more development expertise since the frontend and backend are managed separately. However, the added flexibility and scalability often outweigh the initial complexity.

Custom modules should be placed in the modules/custom directory. This keeps them separate from core modules (in core/modules) and contributed modules (in modules/contrib), making upgrades and maintenance easier.

At minimum, only the .info.yml file is required for Drupal to detect a module. Other files are added depending on the functionality you want, such as a .module file for hooks, a routing file for custom pages, or configuration files for default settings.

A typical custom module includes:

  1. An .info.yml file (required).
  2. An optional .module file if hooks are needed.
  3. Optional YAML files for routing, permissions, and menu links.
  4. A src folder for PHP classes such as controllers, plugins, or forms.
  5. A templates folder for Twig template overrides.
  6. A config folder for configuration and schema files.

You can add configuration to a Drupal module in several ways:

  1. By providing default configuration files inside a config/install folder.
  2. By defining configuration schemas inside a config/schema folder.
  3. By creating administrative settings forms where site administrators can change values.
  4. By using Drupal’s configuration API in your code to read or update settings.
     

The .info.yml file tells Drupal about your module. It contains details such as the module’s name, description, type, the Drupal core version it works with, and any dependencies. Without this file, Drupal will not recognize your module.

To create a custom module in Drupal 10, you:

  1. Create a new folder for your module inside the modules/custom directory.
  2. Add a module information file (.info.yml) to define the module’s name, description, and compatibility.
  3. Optionally add a .module file if you need to implement hooks.
  4. Add routing or menu link files if your module provides pages or menu items.
  5. Clear Drupal’s cache so the system recognizes your new module.
  6. Enable the module from the Extend page or using Drush.
     

A Drupal module is a package of files that extends or modifies the functionality of a Drupal site. Modules can add new features, integrate with external systems, or change how existing features behave, all without altering Drupal core.