Bien souvent on souhaite pouvoir mettre en forme un formulaire dont on n'est pas l'auteur. C'est par exemple le cas d'un formulaire de contact. Drupal est capable d'associer un fichier de template à n'importe quel formulaire. Voyons donc les différentes étapes à mettre en oeuvre.

Identifier le formulaire

Il nous faut tout d'abord connaitre l'identifiant du formulaire auquel on souhaite associer un fichier de template. Pour ce faire on implémente le hook_form_alter(&$form, $form_state, $form_id) qui est appelé pour n'iporte quel formulaire. On peut alors utiliser simplement la fonction drupal_set_message($form_id) qui va afficher l'identifiant. Par exemple pour le formulaire de contact l'identifiant est contact_message_feedback_form.

Associer le formulaire et le template

L'association se fait grace au hook_theme(). Le nom du formattage doit correspondre à l'identifiant du formulaire. On définit en plus le render element comme form. Dans le cas du formulaire de contact,  le template appelé est alors /templates/contact-message-feedback-form.html.twig. Afin que Drupal reconnaisse ce nouveau formattage, il est nécessaire de vider le cache.

template_formulaire.module

Template

Uns fois le fichier créé, il est possible d'afficher certains champs indépendemment. Ne pas oublier d'afficher tous les autres champs dans le template afin de s'assurer que tout champ ajouté à posteriori sera bien rendu. On a ainsi le contrôle complet via un fichier de template sur la disposition des champs, et ce pour n'importe quel formulaire. 

contact-message-feedback-form.html

Quel est votre

besoin ?

Èchangeons sur

votre projet

digital !

Dîtes-nous tout ! Contactez un de nos experts qui pourra vous aiguiller sur le domaine d'expertise qui correspond le plus à votre besoin.

En cochant cette case, j'accepte d'être contacté par mail et/ou par téléphone dans le cadre du traitement de ma demande.
En cochant cette case, j'accepte que mes données personnelles soient enregistrées dans la base de données de Trained People..
CAPTCHA

Dans la même catégorie

Faites le point sur votre site web, faites un audit de site Drupal !

Pourquoi faire auditer votre site web ?


Réforme Qualiopi TrainedPeople

Réforme Qualiopi : Une Nouvelle Assurance de Qualité pour l’organisme de formation de DropTeam - Trained People et ses Clients


CMS Drupal

Drupal : LE CMS pour les professionnels ?