Modifying the Default Registeration Page?

Both modifying the fields and the styling of the user registration (as well as login, lost password, etc. pp.) page can be done programmatically as well as using plugins.

The latter obviously being the much simpler way of achieving quick results. While I’m all for control and doing things on our own, in this case there really is no need to, since excellent plugins exist.

For the task at hand I’d highly recommend checking out the Theme My Login plugin by Jeff Farthing. It is not only powerful, but also well written, safe to use and should be long-term compatible.

It might be enough for you on its own, but for even more control over user profiles it can be combined with CIMY User Extra Fields. These two work well in combination.

Those two should handle the page(s) content. For styling them according to your preferences and/or fitting them into your theme, drop a stylesheet called theme-my-login.css into your theme folder. The plugin looks there first before applying its in-built default styles.

For the sake of completeness: As for the programmatic approach, you’d have to look at the user_register, show_user_profile, edit_user_profile and profile_personal_options actions.