A few days ago I came across an interesting challenge in WordPress. I wanted to hide some of the default profile fields from being displayed to the users in WordPress. Specifically I wanted to hide the AIM, Yahoo IM, and Jabber / Google Talk fields. It took a bit of digging but I found the below function buried in the WordPress.org support forums. Just place the below code in your themes functions.php file to remove these fields:
<?php
add_filter('user_contactmethods','hide_profile_fields',10,1);
function hide_profile_fields( $contactmethods ) {
unset($contactmethods['aim']);
unset($contactmethods['jabber']);
unset($contactmethods['yim']);
return $contactmethods;
}
?>
That’s it! As you can see below the three fields are removed from the Profile page on the WordPress admin side. This makes it much less confusing for users since they don’t see fields that we aren’t using on the website.
Related posts:
- How To: Hide an Admin Menu in WordPress
- How To: Redirect A User After Logging Into WordPress
- How To: Create Backdoor Admin Access in WordPress
- How To: Add a Post Thumbnail to an RSS Feed in WordPress
- How To: Load User Info Using the Admin Email in WordPress




Thanks for the snippet.
It’s really nice to see how the functions.php file of a theme is able to interact not only with the appearance of a blog, but also with the dashboard, isn’t it?
that is great code.
how can we add to it to hide the “website” field as well?
i’ve tried using “url” and “website” and it doesn’t hide it.
Hi, that code works great! but I was also wondering if there’s a way to remove or at least rename the “About youself” Section.
Thanks for the help!
@Arturo:
You can rename the field “Abour yourself” editing de .MO file of your translation ;)
Great hack :)
Ha! Perfect! the mo hack did it, I just rename it to what I wanted and looks perfect! thanks
Any way to remove the “pages” field?