WordPress’s flexibility is one of its best features. Using plugins, you can convert your WordPress site into a social network website. Building online communities or groups, user profiles, member directories, user registration/login, user role editing, and content restriction are all features provided by plugins. However, choosing a plugin solely based on its feature set can be a huge disadvantage in the long run. Because you will be using the plugin for an extended period of time, it is wise and efficient to choose a plugin that is simple to understand and use.
We’ve been working on a WordPress community website for quite some time. There are numerous listicles on the internet that only list the best WordPress plugins for developing a Social Networking or Online Community website. However, none of them examine a plugin from the standpoint of user experience. It all comes down to who has the most features. If creating usable software was that simple, businesses would only focus on increasing feature count. And Apple would not be the best provider of usable softwares today.
In this detailed study, we picked 3 tasks and tried to complete them in 6 WordPress Social Networking or Community plugins. In the UX term we will create a task flow of each task for each plugin. We will track how many clicks it takes in each plugin to complete the same task. This data will be quantifiably. We will see the number of clicks that it takes to do 3 tasks in each plugin.
The Tasks
Adding a Custom User Field to the User Profile
Adding a Custom Field to the Registration / Signup
Creating a User or Member Directory with Only Subscriber User Role
Clicks to Add Custom User Field to the User Profile
Discover which plugin makes it the simplest to create a user field! We tested six popular WordPress plugins and ranked them according to the number of clicks required to complete this task.
No of Clicks to Create a User Field
And the winner is… BuddyPress, Profile Grid, and PeepSo, all tied for first place with 6 clicks!
Profile Builder comes in second with 7 clicks.
Ultimate Member is in third place, with 8 clicks.
UsersWP is in last place, with a whopping 14 clicks.
Here is a detailed Task Flow for each of the six plugins. We recorded the number of steps required to create a custom user field and add it to the user profile.
Clicks to Add Custom User Field to the Registration Form
Clicks to Add User Field on Registration
And the winner is… Profile Builder with a score of 6 clicks!
In second place, with 7 clicks, we have ProfileGrid & BuddyPress.
And in last place, with 8 clicks, we have Ultimate Member, PeepSo & UsersWP.
Screenshot of detailed task flow to add a custom field to registration or signup form.
Clicks to Create a User Directory
Our final task was to create a User or Member Directory with only the Subscriber user role. We discovered that this feature is only available to Ultimate Member. To complete this task, the remaining 5 plugins require either code customization or a premium upgrade. As a result, Ultimate member is the undisputed winner in this category.
Detailed Task Flow of creating member directory using Ultimate member.
Analyzing the Results
We can easily see from the Task Flow and click data that BuddyPress, Profile Grid, and PeepSo require 7 clicks to complete the 1st task. And Profile Builder require 6 click to complete the 2nd task. And the third task has no competition; Ultimate member outperforms every plugin.
Let me play the role of the devil’s advocate. In this case, the number of clicks is the incorrect metric to be concerned with. In fact, having too few clicks is more likely to be an indication of a lack of context.
Consider the following nuances to this specific user journey:
There are 2 aspect to consider,
How it Looks – Visual aspect of design
How it Works – Functional architecture of completing a task
“Designers think they should make something that’s really unique. Actually Being unique is not that important, being familiar is quite comfortable. People like stuff that feels familiar.”
When compared to other plugins, the Ultimate Member’s Field Manager is the most user-friendly option for creating custom user fields. This is due to the fact that you do not have to go through multiple steps to create a user field. Any form, including the User Profile, Login, and Register forms, can have fields added to it.
2. Setting Meta Key Field
When creating a field, only BuddyPress and Ultimate Member require users to add a field key. Other plugins automatically generate a random number and text for the field key, which can cause confusion when working with a developer.
3. BuddyPress Field Creation Options
BuddyPress’s field creation user experience follows a simple mental model. All fields can be accessed and created through a single option panel located in the WordPress Dashboard, under “Users” > “Profile Fields”.
4. Flexible No Code Customization
We discovered that only Ultimate Member provides greater flexibility, such as the ability to display specific user roles on the Member Directory, when creating a user or member directory. Most plugins lack this basic feature, which necessitates code modification or a premium upgrade.
Who is the Final Winner
When comparing two WordPress plugins in terms of user experience (UX), it is important to follow a systematic approach to ensure a fair and comprehensive evaluation. Keep in mind that UX is subjective.
After considering all of the features, the layout, and how simple it is to use. We determined that Ultimate Member and BuddyPress are joint winners. Both of them provide enough flexibility to be considered among the best WordPress plugins for building a membership, community, or social networking website.
Ultimate Member users sometimes face trouble locating where the form data is stored. UM stores the user data in the wp_users and wp_usermeta tables. It saves the meta key as the field key. Ultimate Member stores data in the DB tables *options, *postmeta, *posts, *um_metadata, *usermeta, *users (where * is your Database tables prefix).
If you turned ON the setting “Enable custom table for usermeta” to use this feature. Then Ultimate Member may use this table to speed up search members in the member directory. The database table “{prefix}um_metadata” is optional. This table is used only by the search engine in the member directory. Don’t use this table for retrieving and showing data.
wp_users – This database table contains user fields: “user_login”, “user_pass”, “user_nicename”, “user_email”, “user_url”, “user_registered”, “display_name”.
wp_usermeta – This table contains all custom fields and predefined fields Ultimate Member fields.
wp_um_metadata – This database table contains a copy of data from tables “wp_users” and “wp_usermeta”. It is used by the member directory search and filtering engine to increase performance. The plugin copies data from original tables into this table if the setting “Enable custom table for usermeta” is turned on.
View Form Data from WordPress Dashboard
To view the submitted user data, you can check it in the WP Admin > Users > Hover on any of the users in the list to see the “Info” link > click on that link and it will show the submitted data.
You can also check the submitted data in the Profile Form. See the Profile page generated by UM on first activation. It should be in yoursite.com/user/
You can add fields from Register form to Profile via UM Form Builder. Please go to WP Admin > Ultimate Member > Forms > Edit the profile Form > click on “+” to add a new field > see “Custom fields” to see all created fields from the Register form.
Retrieve Form Data Using WP_User_Query
You can use WordPress function get_user_meta() to retrieve the field value. Ultimate Member function um_user( $data ) may be useful in some cases.
Retrieve a list of users who registered after 1 January 2023
This code will create a new instance of the WP_User_Query class, passing the $args array as an argument. The date_query argument is used to retrieve only users who have registered after 1 January 2023. The code then loops through the results and displays the username, email, and registration date of each user.
Retrieve a list of users who registered after 1 January 2023
This code will create a new instance of the WP_User_Query class, passing the $args array as an argument. The meta_query argument is used to retrieve only users who have a non-empty value for the country field. The code then loops through the results and displays the username, email, and country of each user.
Retrieve Form Data Using SQL Query
Retrieve a list of users who registered after 1 January 2023
You can retrieve a list of all users who registered after 1 January 2023 by using the following SQL query:
This query selects all columns from the wp_users table and returns only those records where the user_registered field is greater than or equal to ‘2023-01-01 00:00:00‘. The result will be a list of all users who registered after 1 January 2023.
Note: You’ll need to replace wp_ with the actual prefix of your WordPress database tables, if it’s different.
This code uses the $wpdb->prepare method to safely format the SQL query and avoid SQL injection attacks. The %s placeholder is used to represent the ‘2023-01-01 00:00:00‘ argument, which is passed as the second argument to the prepare method. The $wpdb->get_results method is then used to execute the query and retrieve the results.
Note: You’ll need to replace {$wpdb->users} with the actual name of the wp_users table, if it’s different.
<?php
$getUsers = $wpdb->get_results(
$wpdb->prepare(
"SELECT * FROM {$wpdb->users}
WHERE user_registered >= %s",
'2023-01-01 00:00:00'
), ARRAY_A
);
foreach($getUsers as $getUser){
print_r($getUser);
}
Here we are using * which feteches all the data (ID, user_login, user_pass, user_nicename, user_email, user_url, user_registered, user_activation_key, user_status, display_name) from that table. If you only want the display name then you can use display_name instead of *
Retrieve a list of users who have filled in the Country Field
This query selects all columns from the wp_users table and joins the wp_usermeta table, where user meta data is stored, on the ID field. The query returns only those records where the meta_key is ‘country‘ and the meta_value is not empty. The result will be a list of users who have filled in the country field, along with their country.
Note: You’ll need to replace wp_ with the actual prefix of your WordPress database tables, if it’s different, and replace ‘country‘ with the actual name of the meta key that the Ultimate Member plugin uses to store the country field, if it’s different.
<?php
$getUsers = $wpdb->get_results(
$wpdb->prepare(
"SELECT wp_users.display_name, wp_usermeta.meta_value
AS country
FROM wp_users
JOIN wp_usermeta ON wp_users.ID = wp_usermeta.user_id
WHERE wp_usermeta.meta_key = 'country'
AND wp_usermeta.meta_value != ''"
), ARRAY_A
);
foreach($getUsers as $getUser){
print_r($getUser);
}
Export/ Import Profile Data
The user import/export functionality is not available in Ultimate Member. There are, however, free plugins that can import and export WordPress users. Consider using one of the following plugins:
Ultimate Member offers tremendous flexibility when it comes to adding fields to their Login, Register & Profile forms. You can add varieties of fields depending on your need. Good news is you can do that with the free version of Ultimate Member WordPress plugin.
Want to create a robust social media site? There are many different types of form fields and functionalities that may be available on a social media site. Some common examples include fields for entering a username, password, and email address to create an account; fields for posting updates, messages, or comments; and options for uploading and sharing photos or videos. Social media sites may also offer additional features and functionalities, such as the ability to search for other users, follow or connect with friends, create or join groups, or customize your profile or settings.
The purpose of adding fields to a form is to collect information from users. By adding fields to a form, you can specify the type of information that you want to collect from users, such as text, numbers, or dates. This allows you to gather the information that you need in a structured and organized way.
Ultimate Member offers exactly that. It lets you add 23 types of fields to your form. And it has 34 Predefined fields.
Field Type
1. Text Box
2. Telephone Box
3. Number
4. Textarea
5. Dropdown
6. Multi-Select
7. Radio
8. Checkbox
9. URL
10. Password
11. Image Upload
12. File Upload
13. Date Picker
14. Time Picker
15. Rating
16. Content Block
17. Shortcode
18. Spacing
19. Divider
20. Google Map
21. Youtube Video
22. Vimeo Video
23. SounCloud Track
Predefined Fields
1. Username
2. Username or E-mail
3. Password
4. First Name
5. Last Name
6. Nickname
7. Website URL
8. Registration Date
9. Last Login
10. E-mail Address
11. Secondary E-mail Add
12. Biography
13. Birth Date
14. Gender
15. Country
16. Facebook
17. Twitter
18. LinkedIn
19. Google+
20. Instagram
21. Skype ID
22. Viber number
23. WhatsApp number
24. Telegram
25. Discord
26. YouTube
27. SoundCloud
28. VKontakte
29. Roles (Dropdown)
30. Roles (Radio)
31. Languages
32. Phone Number
33. Mobile Number
34. User Rating
You can learn more about Ultimate Member field types by following this link.
Ultimate Member is one of the best & complete user profile & Membership plugins for WordPress. The free version of Ultimate Member is enough to compete with most of the premium plugins available in this registration and membership plugin category.
There are lots of membership plugins that will help you build a community website using WordPress but Ultimate Member tops the chart. According to WordPress veteran & renowned Product Strategist Chris Lema “the developers behind Ultimate Member clearly “get it.”
List of WordPress membership plugin that focuses on developing & creating community websites:
Log into your site and go to WordPress Dashboard > Plugins > Add New. Search for “ultimate member”. Click on Install Now. Once the process is complete, activate the plugin on your site.
Setting up Ultimate Member
When you activate Ultimate Member, it will install 7 default pages ( Login, Register, User, Account, Member, Logout & Password Reset pages).
Page
What It Does
Shortcode
Account Page
Allows users to change the setting
[ultimatemember_account]
Password Reset Page
Allows users to reset password
[[ultimatemember_password]
Logout Page
Allows logged-in users to log out of the website.
N/A
Register Page
Allows visitors to register
Shortcode found on Ultimate Member > Forms
Login Page
Allows members to log
Shortcode found on Ultimate Member > Forms
User Page
Outputs user profile with avatar, profile cover, and other custom fields.
Shortcode found on Ultimate Member > Forms
Members Page
Displays list of users
Shortcode found on Ultimate Member > Member Directory.
Install Elementor
Log into your site and go to WordPress Dashboard > Plugins > Add New. In the Search field, enter Elementor and choose Elementor website builder. Click on Install Now. Once the process is complete, activate the plugin on your site.
We’ll show you how to start using Ultimate Member Widgets for Elementor and Elementor together on your site. But first, let’s take a look at an example of what you can accomplish.
How to Use Ultimate Member Alongside the Elementor Page Builder
Step 1: open up any page or post, and make sure you’re using the Elementor editor. If you see the traditional WordPress interface, hit the Edit with Elementor button to switch over.
Step 2: On the left, there’s a list of ‘widgets’
Step 3: If you just want to display a list of Ultimate Member users then drag & drop the “User Listings” widget.
Step 4: customize the looks using Elementor.
Step 5: Once done customizing and setting the user query, color & font to suit your needs, save the settings, and you’re good to go!
Conclusion
If you want your user directory to stand out, you’ll need to put some serious thought into its design. For example, you’ll want to find the best method for displaying your members, ideally in a way that’s both user-friendly and nice to look at.