kgaut.net // Développeur web PHP / Drupal freelance
contactez-moi

Drupal 9 - Désactiver un bloc pour une page spécifique

Drupal propose un mécanisme en backoffice pour contrôler l'affichage des blocs, mais il est nécessaire parfois de mettre en place une logique un peu plus complexe.

Ici nous allons masquer le block "pagetitleblock_content" de la région "header" quand on est sur un nœud de type « petite_annonce » via le hook HOOK_preprocess_page :

function petites_annonces_preprocess_page(&$vars) {
  if(($node = \Drupal::routeMatch()->getParameter('node')) && $node->bundle() === 'petite_annonce') {
    if (isset($vars['page']['header']['pagetitleblock_content'])) {
      unset($vars['page']['header']['pagetitleblock_content']);
    }
  }
}

 

Contenus en rapport

snippet · 4 Oct 2016 Drupal - Afficher un bloc où l'on veut snippet · 15 Oct 2020 Drupal - Afficher un formulaire dans un bloc ou un contrôleur

Commentaires (0)