Como criar um módulo customizado em Drupal 8

Introdução

Qualquer customização na funcionalidade do Drupal 8 deve ser feita através de módulos customizados (custom modules). Esse artigo mostra como criar um custom module.

Pré-requisitos

Essse artigo assume um Drupal 8 instalado com Composer. A principal diferença em relação a uma instalação "tradicional" é que em uma instalação feita com Composer, a pasta modules está localizada dentro da pasta /web em vez de localizar-se na pasta raíz do projeto.

Passo 1 – Criar pasta do módulo

O nome do módulo que iremos criar irá se chamar My Custom Module.

Primeiro precisamos criar a pasta my_custom_module dentro da pasta web/modules/custom/

// Vá para para a pasta de módulos customizados.
cd web/modules/custom

// Crie a pasta my_custom_module.
mkdir my_custom_module

Passo 2 – Criar o arquivo .info.yml

Crie o arquivo my_custom_module.info.yml dentro da pasta my_custom_module.

// Entre na pasta my_custom_module.
cd my_custom_module

// Crie o arquivo .info.yml do módulo.
touch my_custom_module.info.yml

Edite o arquivo my_custom_module.info.yml da seguinte forma:

name: My Custom Module
description: Custom functionalities.
package: Custom
type: module
core: 8.x

Caso deseje tornar seu módulo compatível com a futura versão Drupal 9, substitua core: 8.x com core_version_requirement: ^8 || ^9

name: My Custom Module
description: Custom functionalities.
package: Custom
type: module
core_version_requirement: ^8 || ^9

Passo 3 – Ativar a o módulo

Ative o módulo através desse comando drush

drush en my_custom_module

ou faça o login como administrador para ativar o módulo usando a interface visual na sessão de Extensions do menu administrativo.

Conclusão

Esses são os passos necessários para criar um custom module em Drupal 8. Apesar de não adicionar nenhuma funcionalidade, essa é a base de qualquer módulo Drupal. Para informações mais detalhadas consulte a documentação oficial em https://www.drupal.org/docs/8/creating-custom-modules.