Are you looking for a simple way to add user profile fields in WordPress?
Profile fields and user taxonomies make it possible for you to:
- Learn more about your customers
- Find out how customers discovered your website
- Organize members by type or interest
- Help members to connect with each other
In this post, we’ll show you how to add additional fields in WordPress—whether you want to add them to a checkout form, on user profiles, or keep them for admin use only.
Table of contents
- The Value of WordPress User Profile Fields
- How to Add User Profile Fields in WordPress
- Common User Field Types
- Video: How to Add User Profile Fields in WordPress
- Capture User Fields in Frontend Forms
- User Registrations and Paid Memberships Pro
- Disabling Public User Registration
- User Profile Fields: Sitewide Personalization Ideas
- How are User Fields stored?
- User Fields Documentation: Additional Reading
The Value of WordPress User Profile Fields
There are a variety of ways you can use additional user fields to improve your WordPress website. For example, you might collect additional information about your users, such as their:
- Demographic information
These things can help you understand your users better, optimize your sales conversions, personalize the user experience, and make the most of your marketing efforts.
For example, you can use the information you collect to personalize your email marketing, which can lead to better relationships with your customers—and more sales.
Here are a few more examples of additional fields that give you useful information:
- Finding out customer income levels can help you price your products and services
- User locations can help you personalize their content with local resources and information
- Preferences help you optimize just about everything, from your marketing to the content you display to users
- Fields that ask questions like “How did you hear about us?” help you identify your best marketing channels
Even if your WordPress site isn’t eCommerce related, additional fields can help you identify opportunities for expanding your audience and creating content that will attract people to your site.
How to Add User Profile Fields in WordPress
One of the simplest ways to add additional user fields is to use a WordPress plugin. Paid Memberships Pro is the plugin we recommend to quickly and easily create custom fields and customize how you display them to users. It’s completely free and available in the WordPress.org repository.
If you go on to build a fully featured membership or directory site, PMPro has a ton of great features and integrations to make that possible. But for now, we’re going to focus on the user fields functionality that comes with the core plugin.
Fields can be collected at membership checkout, on the user’s profile, or for administrative view-only. Here’s how it works:
- Install Paid Memberships Pro. Read the full installation guide here.
- Set up a Membership Level. You’ll need to add at least one free or paid level in order to enable registration.
- Navigate to Memberships > Settings in the WordPress admin.
- On the Membership Levels screen, click “Add New Level”.
- Select the “Free” level type.
- Give your membership level a name like “Introductory” or “Free”.
- Save Settings.
- Generate Default Pages.
- Navigate to Memberships > Settings > Pages in the WordPress admin.
- Click “Generate Pages For Me”.
- Save Settings.
- Need a payment gateway?
- If you are using a free membership level, skip over the payment gateway settings for now.
- It’s 100% okay if you don’t want to set up paid levels now or ever.
- You can use PMPo with just one free level and ignore the payment gateway settings.
- Add User Fields
- Navigate to Memberships > Settings > User Fields to create field groups and individual fields. You can use the default More Information field group, or create a new field group.
Common User Field Types
Text fields. Collect free text responses that users type into a one-line field.
Textarea fields. Collect long-form free text responses that users type into a larger field.
Dropdown (select) fields. Allow users to select one option from a dropdown menu.
There are loads of other field types in PMPro’s User Fields feature. You can add fields like radio buttons, file uploads, multi-select and autocomplete fields—just about any field you could need, they have it covered.
Video: How to Add User Profile Fields in WordPress
Capture User Fields in Frontend Forms
User fields in Paid Memberships Pro are shown in a lot of places—giving you the ultimate membership customization you need to capture user profile information in forms on your site.
There are three primary places that profile forms show in a WordPress membership site:
- On the one-page Membership Checkout form.
- On the frontend User Profile Edit screen.
- In the admin (for admins only) on the WordPress User Edit screen.
Remember to choose whether or not you want to show the field on the user profile in the “Field Group” settings. You can also choose whether or not you want to show the field on the checkout page in these settings.
User Registrations and Paid Memberships Pro
Once you set up Paid Memberships Pro for your WordPress site, the plugin handles all of your user registrations for you. This helps you make sure that all people are registering with the correct access and collected profile fields that you setup through this guide.
If you need to allow default WordPress user registration, or have another plugin that handles user registration that has to play nice with PMPro, check out this guide for a simple code snippet to change PMPro’s default behavior when controlling the registration process.
Disabling Public User Registration
Want to make all user registration private and completely hidden? PMPro handles that too.
In this guide we walked through how to create a free membership level and set up custom user fields. Some sites want to only allow admins to generate new user accounts—and you can do that with PMPro, too.
- Navigate back to Memberships > Settings in the WordPress admin.
- Edit that single free level you set up earlier in this guide.
- In the “Other Settings” section, select “ Check to hide this level from the membership levels page and disable registration.”
- Now, edit your site’s Membership Levels page and remove the default levels page shortcode or block.
- You can custom craft this page with any content you need for your project, such as a contact form with a membership inquiry request, or other details about joining your closed community.
User Profile Fields: Sitewide Personalization Ideas
PMPro comes bundled with a no-code way to show a logged in user’s profile field anywhere in your site. This feature is called the
pmpro_member shortcode—and its super fun to use to create a more personalized member experience.
You can use this shortcode to add the logged in user’s display name or a social media profile link right inside your post content or in a widget.
We use the shortcode here at Paid Memberships Pro to show a welcome message and user avatar on the Membership Account page. Here’s the code for that section of our editor.
[pmpro_member field="avatar"] <h2>Welcome, [pmpro_member field="display_name"]</h2>
How are User Fields stored?
It’s time to geek out on data structures! Skip this part if your eyes are already glazing over….
WordPress user data is stored in two places: the
wp_users table and the
wp_usermeta table. If you’re collecting user profile fields in a taxonomy, that data is also stored in the
Why am I talking about this? It’s important that you know where your membership site data is stored. With WordPress and PMPro, all the data is your data. You own and manage everything within your WordPress site.
You can use this data in so many ways throughout WordPress. More importantly, though, you can use this data in combination with loads of integrations.
Paid Memberships Pro doesn’t store user information in a custom tables, which would make it super hard to move data around or use it for advanced techniques like…
- Sending additional user profile fields to your email marketing tool like ConvertKit or Mailchimp.
- Creating Zapier automations to send user data to other third party connected platforms.
- Designing custom public or members-only user directories and profile pages.
User Fields Documentation: Additional Reading
For more information on creating user fields, check out the following posts and documentation:
- Create User Fields via Settings
- Remove or Rename Fields on the Member Profile Edit Page
- User Fields: A Step-By-Step Guide on Creating Custom Fields With Code
- Exploring User Fields: Adding Conditional Fields to Member Profile and Checkout
- Documentation: User Fields