Extra User Details WordPress Plugin
Here is the simple plugin that allows you to add extra fields to the user profile page (e.g. social media links to Facebook, Twitter, LinkedIn profiels etc).
Extra fields can be easily accessed in your templates like a general wordpress author details:
get_usermeta( $userid, $metakey);
Plugin uses WP’s usermeta table. You can add and edit necessary fields at plugin options section in backend.
In case you need it – you can download it here.
This entry was posted by Vadym Khukhrianskyi on November 29, 2009 at 5:49 pm, and is filed under Wordpress. Follow any responses to this post through RSS 2.0.You can leave a response or trackback from your own site.
- #2 written by admin 2 years ago
Hi Rich,
To retrieve extra fields you can use your get_usermeta() (http://codex.wordpress.org/Function_Reference/get_usermeta) function, but please note about parameters:
get_usermeta ( $userid, $metakey )
so for metakey you need to use field’s slug displayed at extra fields settings near every extra added field.
//I can think of renaming the slug to metakey at the Extra Fileds Settings…
I know how to do it, but it wasn’t working.
I found the problem – your plugin doesn’t properly apply update_usermeta and therefore after entering in the extra details on the profile page and clicking “update” they disappear.There is built in functionality in WP2.9 as described here:
http://justintadlock.com/archives/2009/09/10/adding-and-using-custom-user-profile-fieldsYou should update your plugin accordingly. It’s still very useful because people much prefer the graphical interface than adding code like this by hand.
Thanks for taking the time to respond,
Rich- #4 written by admin 2 years ago
- #6 written by admin 2 years ago
Thank you guys, once I had some time I’ve fixed those bugs. Updated plugin already available at wordpress.org – http://bit.ly/dnViXr
- #8 written by admin 2 years ago
Hi, specially for you added a case to get old settings from version 0.1.
So please download plugin once more from http://wordpress.org/extend/plugins/extra-user-details/ and update it on your site. Then go to plugin settings, you will see the button to get your old settings.
- #19 written by admin 2 years ago
Hello, thank you for this plugin … I add a whole bunch of New Extra Fields, such as ‘city’, ‘state’, ‘zip code’, ‘phone number’, ‘fax number’ etc. etc. … but on admin page, edit user, I see only the very last New Extra Field that I added … none of the others that I added are showing on the edit user page in admin panel. how can i get this?
thank you again for plugin
Vadim, thanks for writing this plug-in. I’m using it right now on a new blog, and it seems to work.
2 Suggestions:
- The admin screen is a bit confusing. After adding a field, I have to click on the CP link to reload it; several times the field got deleted or wasn’t set.
- The fields that are created aren’t very flexible in the post screen. It would be nice to be able to specify a text area or text box of variable width.But that’s minor! Thanks for writing this plugin. Spasiba!
Hi Vadim,
Thanks for your plugin! I liked it so much that I couldn’t help but give back to it by doing this rewrite. Please provide me with your email address so I can mail you the new code.
First of all, let me state clearly that I’m not all that familiar with WordPress or the WordPress plugin API, so no doubt there will be things which I have missed as I didn’t know that is the way things should be done.
One thing which comes to mind straight away and which I haven’t looked at, is validating that only users with admin-level priviledges can edit the settings.The reason I started looking at the code was the none-showing of fields after you’ve added a new field (I had to go to another screen, then come back to see the list of fields again).
Additionally, if you would add another field – without first reloading the screen-, all previously defined fields would be gone from the database, which was a pain.Also if you would change the ‘field label’, you would also change the meta key and lose access to the values which users had already provided.
Ok, so I solved that and as I was working on the code anyway, I solved some other (potential) issues and added some new features…..
What I’ve done:
* Rewritten the whole admin function to solve the bugs. If you change the field label now, only the label will change, not the meta-key. And the field list will show correctly after adding new fields.
* Replaced some depreciated WP-functions with their replacements and added backward compatibility for those.
* Replaced all text strings which didn’t have this, with the __() function to prepare the plugin for translating. I haven’t added a language directory yet nor added any translations, I just made the actual plugin code ready for setting this up.
* I also corrected some of the English phrases.
* Added input validation to the admin function. Main restriction: meta keys and labels may now only contain alphanumerical characters within the current locale and spaces.
* Added output validation wherever output was created.
* New feature: added a ‘help text’ input field so admins can define their own help text to be displayed next to the profile field.
* New feature: added a ‘field order’ input field so admins can change the order in which the fields are displayed on user profiles. If two fields were given the same order number, they are sorted by their alphabetic meta key.I’ve tried to maintain backward compatibility, but I’ve only tested in WP 3.0.1.
I’d appreciate your feedback and hope you will consider these changes as the compliment to your work which they are meant to be.
It would be great if you would incorporate my changes into a new version of the plugin so that other people can benefit as well

Smile,
JulietteHello
I had a problem using this plugin. I had the notification:
“Notice: has_cap was called with an argument that is deprecated since version 2.0! Usage of user levels by plugins and themes is deprecated. Use roles and capabilities instead. in /home/daniella/workspace/swathq/public/wp-includes/functions.php on line 3321″
To fix this, when you add the submenu:
“add_submenu_page( ‘users.php’, ‘Extra User Details Options’, ‘Extra User Details’, 8, ‘extra_user_details’, ‘eud_plugin_options’ );”
the param for $capability (8 in the code above) is settting a user level, not a capability. From the wordpress page:
“The capability required for this menu to be displayed to the user. User levels are deprecated and should not be used here! ”
see more: http://codex.wordpress.org/Adding_Administration_Menus
Cheers and thanks for the plugin
Hi,
I’m a new user to WordPress! Not new to php though. So just learning and experimenting the engine and the features. I would greatly appreciate your help if you could clarify my problem below. Thanks in advance.Is there anyway that I can use the metakey without using the user ID? Lets say, if I pass only the metakey in the get_usermeta(‘designation’); will this give u the designation of the user of the current article?
Secondly, I would like to add country flag of the user when they comment on the blog. Is there any cool way that I can do it?
Thanks a lot,
- #32 written by LSB Admin 7 months ago
- #34 written by Ponç J. Llanears 4 months ago
Thanks Vadim… this plugin was what I need.
I’m upgrading a web form 2.9 to 3.3… I have found that the EUD are not shown in the profile in the new version.
The solution, change this line
if ( isset($value[3]) && !empty($value[3]) && $value[3] != 'disable' && current_user_can($value[3]) ) {
for this other
if ( isset($value[3]) && !empty($value[3]) && ( $value[3] != 'disable' ) && current_user_can($value[3]) ) {The “(…)” in the 3rd condition does the trick.
Thank you very much for this plugin.
- #36 written by mlcy 2 months ago
hi there, i am using this plugin on a multisite setup wordpress. i love it. it has been working great. i added a new site recently, it doesn’t seem like the plugin shows up on the new user profiles that i created for the new site. do you have any clue why that happened? how can i fix it? thanks a lot for your help.
- #38 written by John Cole 1 month ago
Hi Vadim,
I just starting working with a client who is using this plugin and reports that it broke after he upgraded his install to WP 3.3.1.
The behavior we’re seeing is that pre-existing field data is no longer displaying in the User Edit view post-upgrade.
Have you seen this before after an upgrade? Is there a way to verify that the user data still resides in the database? How can I look for this? Anything else to check?
Thanks!
John- #39 written by admin 1 month ago
Hey, I just tried to do fresh install WP 3.1, installed EUD 0.3 plugin, created few fields and populated values. Then automatically upgraded WP to 3.3.1 and checked fields again. They were there still after upgrade.
Concerning the database, sure, if those fields are no longer displayed in user profile, they should still reside in database. If you can’t fix the issue, can you please email me more details (wp version before upgrade, php version) through the contact form for example.
Also, there’s going to be a major update soon.
- #40 written by John Cole 1 month ago
Hi Vadmin,
I really appreciate your help on this. I checked the DB tables and the user meta data all appears to be in there. So, it seems to be a matter of the data not being pulled out in the admin user editor.
Apparently this happened during a 3.1.3 to the 3.3.1 upgrade.
What’s the timing on the major update?
I’ll follow up in the contact form as suggested.
- #42 written by John Cole 1 month ago
- #43 written by Vadym Khukhrianskyi 1 month ago
- Which CMS to choose, WordPress, Drupal or Joomla? [INFOGRAPHICS]
- Remove unused shortcodes from post content
- Changing post count on home page in WordPress template
- How to enable multi user support in WordPress 3.0
- Disable default WordPress search query
- Improving WordPress .htaccess – optimize WP’s 404 response
- New ITL.ua Launched!

Vadim, thank you for this plugin, it is exactly what I need.
Unfortunately, though, I’m having a bit of trouble implementing it on a Bios page for a band I’m currently working with. It seems as if I can post standard field data (using get_usermeta) but extra fields do not display in this manner. After hours of trying to fix it, I’ve come to the conclusion that there is something different about the way this plugin stores info to the usermeta database. I would greatly appreciate it if you could contact me to help me fix this because it could a) help improve your plugin or b) prove me wrong.
Thank you once again!
Rich