How to hide profile2 field label and captcha label in registration form I've tried using 2 different functions, where both successfully sets the value to 'invisible' with a dsm($form) check. However, the label is still being displayed. 

function MYMODULE_form_alter(&amp;$form, &amp;$form_state, $form_id) {
  switch ($form_id) {
          case 'user_register_form':
              $form['profile_users']['field_username']['#title_display'] = 'invisible';
              $form['captcha']['#title_display'] = "invisible";
   break;
  }
}


and:

function MYMODULE_form_profile2_edit_PROFILETYPE_form_alter(&amp;$form, &amp;$form_state){

     $form['profile_PROFILETYPE']['field_username']['#title_display'] = 'invisible';

}


I do not encounter this problem for the username, password and email fields.

Edit: I've also tried:

$form['profile_users']['field_username']['und']['#title'] = '';
$form['profile_users']['field_username']['und']['#title_display'] = "invisible";
you can use this code instead:

$form['captcha']['#title'] = '';