Theming User Profile Edit Form not Rendering results.... Help?
Add a hook_theme() implementation

function YOURTHEME_theme($existing, $type, $theme, $path){
  return array(
    'user_profile_form' =&gt; array(
      'render_element' =&gt; 'form',
      'template' =&gt; 'user-profile-form',
      'path' =&gt; drupal_get_path('theme', 'YOURTHEME') . '/templates', 
      //add '/templates' only if you store template files in an additional folder
    ),

  );
}


This tells the Drupal theming system that there's a template file waiting for it in YOURTHEME/templates. 
Next we'll define some variables to pass into that template in a hook_preprocess_HOOK function. We can find the structured array of the form in $variables['form'] and assign the form elements to the variables we'd like to throw around our tpl.php file.

function YOURTHEME_preprocess_user_profile_form(&amp;$variables) {
  $variables['rendered'] = drupal_render($variables['form']['account']);
  $variables['rendered'] = drupal_render($variables['form']['picture']);
}


This example will put the general account info fields and the user picture upload field (if pictures are enabled) into a variable called "rendered."
Now that we have defined a variable, we can output it in a template file. Create a template file named user-profile-form.tpl.php in 'YOURTHEME/templates'. This is a demo example:

&lt;div id="new-form"&gt;
  &lt;?php echo $rendered; ?&gt;
&lt;/div&gt;



When you visit your user edit page, you should now see only some general account info fields and the picture fields. Create different variables in the preprocess function to separate out form elements and place them wherever you wish in the user-profile-form.tpl.php file, adding whatever markup you like.

Taken from HERE