Add a field between name and email I'm running Drupal 7.39 and I'm trying to add a textfield exactly between the  "name" and "email" field. I also tried with the #weight property as noted by the Form API but it does not work.
If you are doing it by custom code, you have to move the field to 'account' container, example code looks like

function my_module_name_form_form_alter(&amp;$form, &amp;$form_state, $form_id) {
  if ($form_id == 'user_register_form') {
    // Change weight in respect of user name field.
    $form['field_test']['#weight'] = $form['account']['name']['weight'] + 1;
    // Use machine name of field as form field, replace 'field_test' with your machine name.
    $form['account']['field_test'] = $form['field_test'];
    unset($form['field_test']);
  }
}