Superfish est un module qui permet d'obtenir des modules déroulants avec des thèmes qui ne le prévoit pas (Bartik par exemple).
L'adresse du module sur drupal.org est https://www.drupal.org/project/superfish
Installer le module
Commencer par ajouter la librairie superfish qui se trouve à cette adresse dans le répertoire "libraries "à la racine de votre site (créer ce répertoire s'il n'existe pas encore)
Ensuite, utiliser les commandes suivantes :
composer require drupal/superfish
drush en superfish
drush cr
La première fois que j'ai installé le module j'ai eu un bug, car j'ai commencé par activer le site puis j'ai copié la librairie.
Utiliser Superfish
Superfish crée un bloc du type "superfish" pour chacun de vos menu. Pour le placer il faut :
- aller dans structure->Mise en place des blocs puis de cliquer sur "Placer le bloc" pour la région où vous souhaitez placer le bloc
- chercher le nom du menu (navigation principale par exemple) et choisir celui du type "superfish". Attention faire une recherche "superfish" ne donne rien
- Paramétrer le bloc. Généralement on n'affiche pas le titre du menu, et pour moi les flèches avait un petit bug d'affichage donc j'ai désactivé "Add arrows to parent menus"
N'oubliez pas de retirer l'ancien menu :
Toujours structure->Mise en place des blocs, dérouler le bouton "configurer" qui se trouve en face du bloc a retirer pour choisir l'option "désactiver" ou "Retirer".
Configurer le point de rupture
Superfish présente le menu de deux façons selon la taille de l'écran. Sur les grands écran, le menu est en ligne alors que sur les petits il est en colonne. Le changement d'apparence se fait par défaut lorsque la largeur fenêtre passe en dessous de 768 pixels. Le problème est que si votre menu contient beaucoup d'élément, il peut faire plus que 768 pixels. Du coup, il arrive que votre menu soit affiché sur 2 lignes. Pour éviter cela, vous avez besoin de modifier le point de rupture (breakpoint) à partir duquel, le menu s'affiche en colonne.
- structure->Mise en place des blocs, dérouler le bouton "configurer" qui se trouve en face du bloc qui contient le menu
- dérouler le cadre PLUGINS SUPERFISH et le cadre SF-SMALLSCREEN
- dans l'input WINDOW WIDTH SETTINGS saisissez la largeur de la fenêtre en-dessous de laquelle, superfish doit passer en colonne