What Are User Roles?
In MyListing, User Roles control who can register on your site, what each account type can do (especially adding and managing listings), and which profile fields appear on signup and in My Account. Think of it this way:- A user account is one person’s login on your site.
- A user role (primary or alternate) is the type of account they get, with its own label, permissions, and registration fields.
Where Do You Manage User Roles?
Go to WP Admin > Theme Tools > User Roles. Direct link (when logged in as an admin):https://yoursite.com/wp-admin/admin.php?page=mylisting-user-roles
From there, you can:
- Turn registration on or off for the My Account page
- Choose how usernames and passwords are created
- Set a default account type and optional reCAPTCHA
- Configure the main and alternate account types (labels, listing permissions, switch option, registration fields)
reCAPTCHA is not recommended due to performance and privacy issues. Cloudflare Turnstile (free) is recommended.
Accounts & Roles
These options sit at the top of the User Roles screen under Accounts & Roles.| Setting | What it does |
|---|---|
| Enable user registration | Lets visitors create an account on the My Account page. Same option as WooCommerce Accounts & Privacy. |
| Generate username automatically | Builds a username from the customer’s name or email so they do not type one. Hides the Username field on the register form when this is on. |
| Generate password automatically | Creates a password for the customer. Hides the Password field on the register form when this is on. |
| Default account type | Preselected choice on the registration form when both account types are available. |
| Enable Google reCAPTCHA in login form | Adds reCAPTCHA to the login form. Configure keys under Listings > Settings (Captcha). |
| Enable Google reCAPTCHA in register form | Adds reCAPTCHA to the registration form. |
User Roles & Permissions
Below Accounts & Roles, you configure two account types:| Account type | In the admin UI | WordPress role (behind the scenes) | Default |
|---|---|---|---|
| Main | Labeled as Main Account Type | customer | Label Customer, can add listings: on, can switch role: off |
| Alternate | Labeled as Alternate Account Type | customer_alt | Disabled until you turn it on |
Enable Alternate Account Type
When this is on, the registration form shows a Choose role step so new users pick between your two labels. Each type can have different permissions and fields. When it is off, everyone receives the main account type, and the alternate role is hidden from WordPress role lists (the role stays in the database for users who already have it).Role Name
The label is shown on the registration form when filtering users by role and in switch-account messages. Examples from the theme: “Business User” for the main type and “Private User” for the alternate type.Can Add Listings
When on, users with this role can submit listings through the Add Listing form and keep listing tools in My Account (My Listings, Promotions, and related dashboard areas). When off:- They cannot submit new listings
- My Listings and Promotions are removed from the My Account menu
- The Add Listing experience shows a short message instead of the form
- Header “add listing” style calls to action are hidden for that user
Can Switch Role
When on, users see an Account type box on My Account > Account details with a button to switch to the other type (for example, Switch to Private User). Switching only works when the alternate account type is enabled. If the target role does not allow switching back, the theme warns that the change is irreversible.Registration Form Fields
For each enabled account type, choose which fields appear on signup and (where allowed) on Account details. You can drag to reorder, expand a field to edit it, and add fields from the Available fields list. Required fields that cannot be removed: Email, Username, and Password.| Field | What it collects |
|---|---|
| Account email (always required) | |
| Username | Login name (hidden on register if generate username is on) |
| Password | Account password (hidden on register if generate password is on) |
| First Name | Given name |
| Last Name | Family name |
| Display Name | Public name shown on the site |
| About Yourself | Short bio (used on the MyListing author profile) |
| Profile Picture | Avatar upload (used on the author profile) |
| Social Networks | Social links (used on the author profile) |
- Label
- Required field
- Show in user registration form
- Show in user account details form
Where Users See This
Registration (My Account)
On the My Account page, when registration is enabled, visitors see the Sign Up form. If the alternate type is enabled, they first pick a role, then fill in the fields for that type.Account Details
Logged-in users can edit the fields allowed for their role under My Account > Account details. If they can switch roles, the Account type panel appears beside that form.Add Listing and Dashboard
Users who can add listings receive the normal listing dashboard. Users who cannot get a simpler My Account menu without listing management links.How the Pieces Fit Together
A practical example for a site with businesses and private members:- Enable user registration so people can create accounts.
- Main Account Type is labeled Business, Can add listings is on, and the register form asks for Email, Password, Display Name, and Profile Picture.
- Enable alternate account type is on. Regular Member has Can add listings off, so those users browse, favorite, and message without a listing dashboard.
- Default account type is set to Business if most signups are listing owners.
- Can switch role is on for Regular Member if you want them to upgrade to Business from Account details; leave it off on Business if you do not want them to downgrade.
Common User Role Setups
| Site idea | Typical setup |
|---|---|
| Single audience (everyone can list) | Keep only the main type. Leave the alternate type off. Defaults are usually enough. |
| Businesses + consumers | Main: can add listings. Alternate: cannot. Different fields if businesses need a company-style display name. |
| Employers + job seekers | Same split: one type posts jobs, the other only applies or saves. |
| Soft upgrade path | Let the non-listing role switch to the listing role; do not allow switching back if you want the change permanent. |
Helpful Tips
- Skip this screen when you can. If you do not need two account types or profile extras (picture, social networks, bio), defaults are fine.
- Name roles for people, not for WordPress. Use labels visitors understand (Business, Member) instead of jargon like Customer alt.
- Can add listings drives the dashboard. Turning it off is the cleanest way to provide someone a simpler My Account without custom code.
- Watch irreversible switches. If only one side has Can switch role, the confirmation message says the change cannot be undone.
- Prefer lighter spam tools than reCAPTCHA when possible. Theme reCAPTCHA can be turned on for login and register here, but it often adds load and is configured in more than one place on a MyListing site. Many builders use Cloudflare Turnstile instead.
- Author pages need the profile fields. About Yourself, Profile Picture, and Social Networks feed the MyListing author profile. Add them if you care about that page.
Quick Reference
| I want to… | Go to… |
|---|---|
| Open User Roles settings | Theme Tools > User Roles |
| Let visitors create accounts | Enable user registration |
| Offer two signup paths | Enable alternate account type, then set each role’s label and fields |
| Stop a role from posting listings | Turn off Can add listings for that role |
| Let users change account type themselves | Turn on Can switch role (and confirm the other role’s switch setting) |
| Change what appears on Sign Up | Registration form fields for that role |
| Configure reCAPTCHA keys | Listings > Settings (linked from the captcha toggles) |
Where to Go Next
- Add Listing Flow for what happens after a user can post listings
- Listing Stats for the dashboard metrics listing owners see when they can add listings
- WooCommerce for store and package setup that often pairs with listing accounts
- MyListing 101 Intro for the full theme overview
Common Questions
- Do I need two user roles? No. Keep the alternate type off unless you truly need different permissions or signup fields. Many successful sites use one type only.
- Why can’t a user submit a listing? Confirm they are logged in, their role has Can add listings on, and the listing type is not a global Explore-only type. If they have the wrong role but Can switch role is on, they can change type under Account details (when the other role can post).
- Why are My Listings and Promotions missing from My Account? That role has Can add listings turned off. Those menu items are hidden on purpose.
- Is the default account type the same as the WordPress default role? It chooses which MyListing account type is preselected on the register form (main or alternate). New users are registered as WooCommerce customer roles for those types, not as the generic WordPress Subscriber default.
- Where do users switch roles? My Account > Account details, in the Account type panel, when Can switch role is allowed for their current role.
- Why don’t Username or Password appear on Sign Up? Generate username automatically or Generate password automatically is on, so those fields are hidden on the register form.
- Are these the same as WordPress roles like Editor or Administrator? No. This screen is for your front-end customers (main and alternate). Staff roles are managed under WP Admin > Users as usual.