Aller au contenu

Autres Modules Utiles

Améliore drastiquement la barre d’outils avec des menus déroulants multi-niveaux.

Fenêtre de terminal
ddev composer require drupal/admin_toolbar
ddev drush en admin_toolbar admin_toolbar_tools -y

Sous-modules disponibles :

ModuleFonctionnalitéRecommandé
admin_toolbarMenus déroulants✅ Essentiel
admin_toolbar_toolsRaccourcis (flush cache, cron, dev)✅ Très utile
admin_toolbar_searchRecherche dans le menu admin⭐ Optionnel
admin_toolbar_links_access_filterFiltre les liens selon permissions⭐ Optionnel

Avantages :

  • ⚡ Accès rapide à toutes les pages admin sans navigation
  • 🔄 Bouton “Vider le cache” toujours visible
  • 🚀 Gain de temps : réduction de 50% des clics
  • 👥 Adapté aux débutants comme aux experts

Thème d’administration moderne et accessible.

Fenêtre de terminal
ddev composer require drupal/gin
ddev drush theme:enable gin -y
ddev drush config-set system.theme admin gin -y

Navigation rapide avec raccourci clavier (Alt+D).

Fenêtre de terminal
ddev composer require drupal/coffee
ddev drush en coffee -y

Tapez le nom d’une page admin pour y accéder instantanément.

Génère un sitemap XML pour les moteurs de recherche.

Fenêtre de terminal
ddev composer require drupal/simple_sitemap
ddev drush en simple_sitemap -y

Configuration :

  1. ConfigurationRecherche et métadonnéesSimple XML Sitemap

  2. Activer par type de contenu :

    Produit: Inclure (priorité 0.8)
    Article: Inclure (priorité 0.6)
    Page: Inclure (priorité 0.5)
  3. Générer : ddev drush simple-sitemap:generate

  4. Accès : /sitemap.xml

Gère les redirections 301/302.

Fenêtre de terminal
ddev composer require drupal/redirect
ddev drush en redirect -y

Fonctionnalités :

  • Redirections automatiques quand URL change
  • Import/export de redirections
  • Statistiques d’utilisation

Intégration Google Analytics / Tag Manager.

Fenêtre de terminal
ddev composer require drupal/google_tag
ddev drush en google_tag -y

Configuration :

  1. ConfigurationSystèmeGoogle Tag
  2. Ajouter le container ID : GTM-XXXXXX

Améliore le sélecteur de médias.

Fenêtre de terminal
ddev composer require drupal/media_library_form_element
ddev drush en media_library_form_element -y

Définit le point focal des images pour le recadrage.

Fenêtre de terminal
ddev composer require drupal/focal_point
ddev drush en focal_point -y

Permet de s’assurer que le sujet principal est toujours visible.

Optimise automatiquement les images uploadées.

Fenêtre de terminal
ddev composer require drupal/imageapi_optimize drupal/imageapi_optimize_webp
ddev drush en imageapi_optimize imageapi_optimize_webp -y

Configuration :

  1. Créer un pipeline d’optimisation
  2. Appliquer aux styles d’images

Protection contre les attaques courantes.

Fenêtre de terminal
ddev composer require drupal/seckit
ddev drush en seckit -y

Protections :

  • XSS (Content Security Policy)
  • Clickjacking (X-Frame-Options)
  • CSRF

Renforce les règles de mots de passe.

Fenêtre de terminal
ddev composer require drupal/password_policy
ddev drush en password_policy -y

Règles :

  • Longueur minimale
  • Caractères spéciaux obligatoires
  • Historique des mots de passe

Empêche la détection des noms d’utilisateurs.

Fenêtre de terminal
ddev composer require drupal/username_enumeration_prevention
ddev drush en username_enumeration_prevention -y

Outils de développement essentiels pour debugger.

Fenêtre de terminal
# Installer en dépendance de développement
ddev composer require --dev drupal/devel
ddev drush en devel devel_generate -y

Fonctionnalités principales :

  • 🐛 Debug : dpm(), kint() pour afficher des variables
  • 📊 Génération : Créer des contenus, utilisateurs, termes de test
  • 🔍 Inspection : Routes, hooks, thèmes, variables
  • 🔧 Outils : Rebuild menus, clear cache, reinstall modules

Exemples d’utilisation :

// Dans un template Twig
{{ kint(node) }}
// Dans un module PHP
\Drupal::service('devel.dumper')->dpm($variable);
dpm($node); // Raccourci

Générer du contenu de test :

Fenêtre de terminal
# 50 produits
ddev drush devel-generate:content 50 --bundles=product
# 20 termes de taxonomie
ddev drush devel-generate:terms category 20
# 10 utilisateurs
ddev drush devel-generate:users 10

Barre de debug façon Symfony.

Fenêtre de terminal
ddev composer require --dev drupal/webprofiler
ddev drush en webprofiler -y

Informations affichées :

  • Temps de chargement
  • Requêtes SQL
  • Cache hits/misses
  • Mémoire utilisée

Télécharge les fichiers depuis la production.

Fenêtre de terminal
ddev composer require --dev drupal/stage_file_proxy
ddev drush en stage_file_proxy -y

Configuration dans settings.local.php :

$config['stage_file_proxy.settings']['origin'] = 'https://www.production-site.com';
$config['stage_file_proxy.settings']['hotlink'] = FALSE;

Configuration avancée des emails.

Fenêtre de terminal
ddev composer require drupal/symfony_mailer
ddev drush en symfony_mailer -y

Configuration pour Gmail/SMTP :

Hôte: smtp.gmail.com
Port: 587
Chiffrement: TLS
Authentification: Oui

Permet de configurer différents expéditeurs par module.

Fenêtre de terminal
ddev composer require drupal/mailsystem
ddev drush en mailsystem -y

Module core pour les statistiques de visites.

Fenêtre de terminal
ddev drush en statistics -y

Alternative à Google Analytics, respectueuse de la vie privée.

Fenêtre de terminal
ddev composer require drupal/matomo
ddev drush en matomo -y

Les modules multilingues sont inclus dans le core :

Fenêtre de terminal
ddev drush en language content_translation locale -y

Configuration :

  1. ConfigurationLangues régionalesLangues
  2. Ajouter les langues (FR, EN)
  3. Configurer la traduction par type de contenu

Essentiels

  • pathauto
  • metatag
  • webform
  • redirect
  • simple_sitemap

Admin

  • admin_toolbar
  • gin
  • coffee

SEO

  • metatag_open_graph
  • metatag_twitter_cards
  • google_tag

Dev

  • devel
  • webprofiler
  • stage_file_proxy
Fenêtre de terminal
# Modules production
ddev composer require \
drupal/pathauto \
drupal/metatag \
drupal/webform \
drupal/redirect \
drupal/simple_sitemap \
drupal/admin_toolbar \
drupal/gin \
drupal/token \
drupal/focal_point \
drupal/honeypot
# Modules dev
ddev composer require --dev \
drupal/devel \
drupal/webprofiler \
drupal/stage_file_proxy
# Activer tout
ddev drush en pathauto metatag metatag_open_graph metatag_twitter_cards \
webform webform_ui redirect simple_sitemap admin_toolbar admin_toolbar_tools \
token focal_point honeypot -y
ddev drush theme:enable gin -y
ddev drush config-set system.theme admin gin -y
  • Pathauto configuré (URLs propres)
  • Metatag configuré (SEO + Open Graph)
  • Webform avec formulaire contact
  • Simple Sitemap généré
  • Redirect activé (redirections 301)
  • Honeypot anti-spam
  • Admin Toolbar installé
  • Gin theme admin
  • Focal Point (images)
  • Security Kit (protection)
  • Google Tag (analytics)
  • Password Policy (sécurité mots de passe)
  • Symfony Mailer (emails transactionnels)
  • Devel activé (local uniquement)
  • Webprofiler activé (local uniquement)
  • Stage File Proxy configuré
Fenêtre de terminal
# Modules production
ddev composer require \
drupal/pathauto \
drupal/metatag \
drupal/webform \
drupal/redirect \
drupal/simple_sitemap \
drupal/admin_toolbar \
drupal/gin \
drupal/token \
drupal/focal_point \
drupal/honeypot \
drupal/seckit \
drupal/google_tag
# Modules dev
ddev composer require --dev \
drupal/devel \
drupal/webprofiler \
drupal/stage_file_proxy
# Activer les modules production
ddev drush en \
pathauto token \
metatag metatag_open_graph metatag_twitter_cards \
webform webform_ui \
redirect simple_sitemap \
admin_toolbar admin_toolbar_tools \
focal_point honeypot seckit google_tag -y
# Activer Gin comme thème admin
ddev drush theme:enable gin -y
ddev drush config-set system.theme admin gin -y
# Modules dev (local uniquement)
ddev drush en devel devel_generate webprofiler -y
BesoinModulePrioritéComplexité
URLs propresPathauto + Token🔴 Critique🟢 Facile
SEOMetatag + Simple Sitemap🔴 Critique🟡 Moyen
FormulairesWebform🔴 Critique🟡 Moyen
Admin moderneGin + Admin Toolbar🟠 Important🟢 Facile
Anti-spamHoneypot🟠 Important🟢 Facile
RedirectionsRedirect🟠 Important🟢 Facile
SécuritéSecurity Kit🟡 Recommandé🟡 Moyen
ImagesFocal Point🟡 Recommandé🟢 Facile
AnalyticsGoogle Tag🟡 Recommandé🟢 Facile
DebugDevel (dev only)🟡 Recommandé🟢 Facile

Local (dev) :

Fenêtre de terminal
Tous les modules production
Devel + Devel Generate
Webprofiler
Stage File Proxy

Staging :

Fenêtre de terminal
Tous les modules production
PAS de modules dev
Configuration identique à prod

Production :

Fenêtre de terminal
Modules essentiels uniquement
AUCUN module dev
Cache et performance optimisés
Logs et monitoring actifs

Les modules essentiels sont en place ! Passons aux exercices pour mettre tout en pratique.