web-dev-qa-db-fra.com

Modification du formulaire d'inscription

Je voudrais réviser le formulaire d'inscription d'un nouvel utilisateur par défaut dans Drupal 7. Plutôt que de demander "nom d'utilisateur", je veux demander "nom complet" avec des instructions d'aide pour saisir le texte "nom d'utilisateur est votre nom complet comme vous l'utiliseriez normalement. "

Il y a peut-être d'autres changements de mise en forme mineurs que je voudrais également apporter.

Je ne trouve pas d'élément de menu administrateur pour accéder à tout ce qui concerne cette question. Et je ne parviens pas à localiser dans un directeur un fichier contenant du texte indiquant qu'il s'agit de la source du nouveau formulaire d'enregistrement d'utilisateur.

Je me rends compte que c'est un peu non conventionnel, mais c'est utile pour nos besoins. Je connais un module qui permet la saisie du prénom/nom, mais lors du traitement, il modifie la saisie en première initiale/nom de famille, c'est-à-dire Tom Thumb = nom d'utilisateur de "tthumb". Le module "Realname Registration" serait exactement ce que je recherche s'il ne traduisait que le nom d'utilisateur de la même manière que l'entrée.

Cela ne résoudrait pas nécessairement les autres modifications de mise en forme, mais je serais très heureux de pouvoir modifier manuellement le texte d'aide du formulaire d'inscription dans le champ Nom d'utilisateur, en demandant au nouvel utilisateur de s'inscrire en utilisant son vrai nom.

Merci pour toute l'aide que tu peux apporter.

J.M.

8
JM Foster

La façon la plus simple est de créer un module personnalisé et d'utiliser hook_form_alter () :

function mymodule_form_alter(&$form, &$form_state, $form_id) {
  if ($form_id === 'user_register_form') {
    $form['account']['name']['#title'] = t('Full name');
    // perform other changes here
    // var_dump() or krumo() the contents of $form to see what you can change
  }
}

Si vous préférez, vous pouvez également un variation de hook_form_alter pour cibler le formulaire spécifiquement au lieu d'avoir à faire un if

function mymodule_form_user_register_form_alter(&$form, &$form_state, $form_id) {
  $form['account']['name']['#title'] = t('Full name');
  // perform other changes here
}
13
Alex Weber