J'utilise le module de profil et j'ai plusieurs catégories pour différents champs. Je veux ajouter un petit texte au début de l'une des catégories pour savoir à quoi sert la catégorie. Les informations seraient affichées lors de l'enregistrement d'un nouvel utilisateur. Fondamentalement, je veux dire aux utilisateurs de remplir uniquement une catégorie sur certaines conditions. Quelqu'un peut-il me dire comment je pourrais faire cela? Je suppose que je pourrais utiliser hook_form_alter(), mais je ne sais pas par où commencer.Insertion Description Texte vers le formulaire d'enregistrement d'utilisateur Drupal
Répondre
Vous voulez create your own module et implémentez hook_form_alter comme vous l'avez mentionné.
En bref:
- Utilisez print_r ($ form) en hook_form_alter de regarder à travers ce que vous devez modifier
- Une catégorie aura un #type => 'fieldset' et #title => 'Ce que vous avez nommé votre catégorie'
- Supprimer print_r et ajouter $ form ['categoryname'] ['# description'] = 'Ma description ici!';
Vous devrez peut-être mettre à jour le "poids" de votre module comme je l'ai décrit here (en remplacement de CCK avec profil).
Comme Chris Ridenour alluded to, vous pouvez le faire avec hook_form_alter()
dans un module personnalisé:
function mymodule_form_alter(&$form, &$form_state, $form_id) {
if ($form_id === 'user_profile_form') {
// Change personal to the name of the category.
$form['personal']['#description'] = t('This is a description of your personal information.');
}
}
Dans cet exemple, il ajoute une description à la catégorie personnelle sur le formulaire de profil d'utilisateur.
Vous pouvez en savoir plus sur les types de choses que vous pouvez modifier dans le . Si vous avez installé le module Devel, dsm($form)
au sein de votre hook_form_alter()
va imprimer la structure du formulaire pour vous donner une idée de ce qu'il est possible de modifier.
Salut Mark, merci beaucoup pour votre explication. C'était très utile et j'ai résolu mon problème. – Ben
Salut Chris, Merci beaucoup, ça a marché! – Ben