hook_form_alter() et hook_FORM_ID_alter() sont appelés alors qu'un formulaire est créé et avant de l'afficher sur l'écran.
Ces fonctions sont écrites dans le fichier .module.
Toujours effacer le cache après avoir écrit toute fonction de crochet. Cela fait comprendre à Drupal qu'une telle fonction a été déclarée.
Utilisez drush cr
si vous utilisez la version 8 de drush sinon cliquez sur Manage-> Drupal 8 logo-> Purgez toutes les caches pour effacer les caches. Vous pouvez maintenant vérifier si la fonction est appelée ou non. La meilleure façon de vérifier cela est d'installer le module Devel, activez-le. Avec Devel, Kint est installé. Activer Kint aussi à partir de l'interface utilisateur d'administration. Après avoir fait cela, vous pouvez vérifier si le crochet est appelé ou non de la manière suivante:
function constellator_form_alter(&$form, &$form_state, $form_id){
kint($form);
}
Ce imprimera toutes les variables de formulaire pour toutes les formes de la page. Si vous souhaitez cibler un formulaire particulier dans la page, par exemple. vous formez, noeud question forme, tapez:
function node_question_form_form_alter(&$form, &$form_state, $form_id){
kint($form);
}
En utilisant l'écho, la façon dont vous avez fait, vous pouvez vérifier si la fonction est appelée ou non, sans aucun tracas, en consultant le code source de la page puis en cherchant le texte que vous avez répercuté, en utilisant une option de recherche du navigateur, comme, Ctrl + f dans le cas de Google Chrome.
Ce module est-il activé? –