Split D7 User Account Edit Form in multiple blocks I need to split the user account edit form that shows up on one page to multiple pages. That means I want to separate change password fields, two custom fields i created - field_first_name and field_last_name and so on.  For moving the password fields to new block I used the solution provided in this link How can I display a change password form on its own? and it works great.  

I am trying to use the same code except make some minor changes for modifying the custom fields (first name and last name).  The only difference is, I need to pre-populate these fields with the values from the current logged in users information.  

// Get the currently logged in user object.
$form['#account'] = $GLOBALS['user'];

// Textfield for first name.
$form['field_first_name'] = array(
'#type' =&gt; 'textfield',
'#title' =&gt; t('First Name'),
'#size' =&gt; 60,
'#default_value' =&gt; what should I enter here?
'#required' =&gt; TRUE
);


Also if I enter a new value for these fields, it doesnt get updated in the user account. I am using the following code - 

/**
* Submit handler for change_name_form().
*/
function change_name_form_submit(&amp;$form, &amp;$form_state) {
// Set up the edit array to names to user_save()
$edit = array(
'field_first_name' =&gt; $form_state['values']['field_first_name'],
'field_last_name' =&gt; $form_state['values']['field_last_name']
);

// Save the account with the new name.
user_save($form['#account'], $edit);

// Inform the user.
drupal_set_message(t('Your information has been changed.'));
}


What additions / changes do I need to make to the code to get the desired output?  Any help is greatly appreciated -
I haven't done this in code, but I split the user profile into multiple pages on my site with the Field Group module (as the module's page says, it is only client-side).

There is a screencast about how the multipage features work.

Another option is the Profile 2 module, which will create actual separate paths for different settings.