Configurer son environnement de DEV pour Drupal 8

  • | modifié le | Configuration
drupal-8-configuration-environnement

Pour commencer à développer sous Drupal 8, il faut d'abord configurer son environnement et désactiver tous les caches de Drupal (render cache, dynamic page cache, Twig cache).

Création du fichier local settings

Tout d'abord on va créer un fichier settings local qui contiendra nos réglages pour notre environnement. Pour ça on va copier le fichier sites/example.settings.local.php dans sites/default/settings.local.php. 

$ cp sites/example.settings.local.php sites/default/settings.local.php

Ensuite on ouvre le fichier sites/default/settings.php pour inclure ce ficher local.settings.php, on décommente les lignes suivantes :

if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) { 
   include $app_root . '/' . $site_path . '/settings.local.php'; 
}

Configuration du fichier local settings

On peut changer ces 2 paramètres à TRUE si on veut travailler avec le css et js aggregation :

$config['system.performance']['css']['preprocess'] = FALSE;
$config['system.performance']['js']['preprocess'] = FALSE;

Il faut en revanche décommenter ces 2 lignes pour désactiver le "render cache" et le "dynamic page cache" :

$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';

Et la ligne suivante : 

$settings['cache']['bins']['page'] = 'cache.backend.null';

Si on ne veut pas installer les thèmes et modules de test, on peut setter cette ligne à FALSE:

$settings['extension_discovery_scan_tests'] = FALSE;

Configurer le fichier development.services.yml

NOTE: Il ne faut pas recréer ce fichier, il existe déjà dans le répertoire /sites.

Ci dessous la configuration à adopter pour le fichier development.services.yml (attention à l'indentation dans le fichier YML) :

# Local development services.
#
# To activate this feature, follow the instructions at the top of the
# 'example.settings.local.php' file, which sits next to this file.
parameters:
  http.response.debug_cacheability_headers: true
  twig.config:
    debug: true
    auto_reload: true
services:
  cache.backend.null:
    class: Drupal\Core\Cache\NullBackendFactory

Twig cache: On peut réactiver le cache de twig en modifiant les paramètres debug et auto_reload avec la valeur false.

Enfin il faut vérifier que ce fichier development.services.yml est bien activé dans notre fichier settings.local.php :

$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';

 

On peut maintenant commencer à coder! ;)

 

L'auteur de cet article
Julien Krier
Responsable Digital, ayant occupé différents postes en informatique depuis 2001, Julien Krier a travaillé sur de multiples plateformes, sites de contenu ou e-commerce à fort trafic. Il est spécialisé dans les technologies web sur les CMS comme Drupal 7 ou Drupal 8 et les Framework Php comme Symfony 5.
Cet article vous a aidé?
Average: 4 (2 votes)
Partagez cet article
Articles sur le même sujet
Ajouter un champ custom à l'entité User dans un module custom en Drupal 8Comment ajouter un champ custom à l'entité User de Drupal 8? Voici un petit tuto pour étendre les utilisateurs dans un module custom.
Sauvegarder et restaurer un site en Drupal sur Simple Hosting de Gandi.net En fonction de son hébergement c'est parfois contraignant de sauvegarder et restaurer une instance de Drupal en production. Voici 3 scripts pour faire des backups de Drupal 8 sous Simple Hosting de l'hébergeur Gandi.
hook_help() : créer une page d'aide pour un module en Drupal 8Pour développer de bons modules pérennes, il est important d'avoir des informations ou de la documentation sur le fonctionnement du module ou son installation. Pour enregistrer ces informations on implémente le hook_help().