User access to own contact record, forwarding upon login
When a user is logged in their information is auto populated in profile forms. So when they go to event registrations, donation pages, etc. their info is listed in the profile fields. If they make changes this information is updated in CiviCRM. 

You can create a profile for editing and insert it into a WordPress page via a short code with the edit option and direct the user there after login. You may want to restrict access to that page to logged in users. The 'Members' plugin in WordPress does a good job of restricting access by user role.