Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a user role in WordPress?
A user role in WordPress defines a set of permissions that control what a user can and cannot do on a website. It helps manage access and capabilities easily.
Click to reveal answer
beginner
Name the default WordPress user roles.
The default WordPress user roles are: Administrator, Editor, Author, Contributor, and Subscriber. Each has different levels of access and permissions.
Click to reveal answer
intermediate
What capability does the Administrator role have that others do not?
The Administrator role has full control over the website, including managing themes, plugins, users, and settings. Other roles have limited permissions.
Click to reveal answer
intermediate
How can you customize user permissions in WordPress?
You can customize user permissions by using plugins like 'User Role Editor' or by adding custom code to modify capabilities for roles or individual users.
Click to reveal answer
beginner
Why is it important to assign the correct user role?
Assigning the correct user role ensures users have only the access they need, which helps keep the website secure and organized by preventing unauthorized actions.
Click to reveal answer
Which WordPress role can publish and manage posts but cannot install plugins?
AAuthor
BAdministrator
CEditor
DSubscriber
✗ Incorrect
Editors can publish and manage posts including others' posts but cannot install plugins, which is reserved for Administrators.
What is the default role assigned to new users in WordPress?
AAuthor
BSubscriber
CContributor
DEditor
✗ Incorrect
By default, new users are assigned the Subscriber role, which allows them to read content and manage their profile only.
Which capability is NOT typically allowed for the Contributor role?
AWrite posts
BDelete own posts
CEdit own posts
DPublish posts
✗ Incorrect
Contributors can write and edit their own posts but cannot publish them; publishing is done by Editors or Administrators.
How can you add a new custom user role in WordPress?
ABy installing a plugin or adding code with add_role() function
BBy editing the wp-config.php file
CUsing the WordPress dashboard settings
DBy changing the database directly
✗ Incorrect
New roles can be added by plugins or by using the add_role() function in custom code.
Which role should you assign to a user who only needs to comment and read content?
ASubscriber
BAuthor
CEditor
DAdministrator
✗ Incorrect
Subscribers can read content and leave comments but cannot create or edit posts.
Explain the difference between the Editor and Author roles in WordPress.
Think about who can control others' content.
You got /3 concepts.
Describe how you would safely give a user permission to edit posts but not change site settings.
Focus on limiting access to settings.
You got /3 concepts.
Practice
(1/5)
1. What is the main purpose of user roles in WordPress?
easy
A. To group permissions and control what users can do
B. To change the website's theme
C. To add new plugins automatically
D. To backup the website data
Solution
Step 1: Understand the concept of user roles
User roles in WordPress are designed to group permissions for users.
Step 2: Identify the purpose of roles
Roles control what actions users are allowed to perform on the site.
Final Answer:
To group permissions and control what users can do -> Option A
Quick Check:
User roles = group permissions [OK]
Hint: Roles group permissions to control user actions [OK]
Common Mistakes:
Confusing roles with themes or plugins
Thinking roles backup data
Assuming roles add new features automatically
2. Which function is used to add a new user role in WordPress?
easy
A. add_user_role()
B. add_role()
C. create_role()
D. new_role()
Solution
Step 1: Recall WordPress role functions
The correct function to add a new role is add_role().
Step 2: Verify function names
Other options like add_user_role() or create_role() do not exist in WordPress core.
Final Answer:
add_role() -> Option B
Quick Check:
Adding roles = add_role() [OK]
Hint: Use add_role() to create new roles [OK]
Common Mistakes:
Using add_user_role() which is not a WordPress function
Confusing with create_role() or new_role()
Trying to add roles without this function
3. What will the following code output if the current user has the 'edit_posts' capability?
This function checks if the current user has a specific capability.
Step 2: Analyze the condition
If the user has 'edit_posts', the code echoes 'Can edit posts'.
Final Answer:
Can edit posts -> Option D
Quick Check:
Has capability = prints confirmation [OK]
Hint: current_user_can() returns true if user has capability [OK]
Common Mistakes:
Assuming it returns false always
Confusing capability names
Expecting syntax errors from correct code
4. Identify the error in this code snippet for removing a user role:
remove_role('editor');
medium
A. remove_role() requires two parameters
B. remove_role() cannot remove default roles
C. No error, this code correctly removes the 'editor' role
D. The role name must be capitalized
Solution
Step 1: Check remove_role() usage
The function remove_role() takes one parameter: the role slug. This usage is correct.
Step 2: Verify default roles behavior
WordPress allows removing default roles like 'editor' using remove_role(). The code executes without error, though default roles may be re-registered later.
Final Answer:
No error, this code correctly removes the 'editor' role -> Option C
Quick Check:
remove_role() works on all roles [OK]
Hint: remove_role('editor') works fine [OK]
Common Mistakes:
Thinking remove_role needs two parameters
Believing default roles cannot be removed
Assuming role names must be capitalized
5. You want to create a custom role 'content_manager' that can edit posts and moderate comments. Which code snippet correctly adds this role with these capabilities?
hard
A. add_role('content_manager', 'Content Manager', ['edit_posts' => true, 'moderate_comments' => true]);
B. add_role('content_manager', 'Content Manager', ['edit_posts', 'moderate_comments']);
C. add_role('content_manager', 'Content Manager', ['edit_posts' => false, 'moderate_comments' => true]);
D. add_role('content_manager', 'Content Manager', ['edit_posts' => true, 'delete_posts' => true]);
Solution
Step 1: Understand add_role() parameters
The function takes role slug, display name, and an array of capabilities with boolean values.
Step 2: Check capabilities array
Capabilities must be keys with true/false values to grant or deny permissions.
Step 3: Match required capabilities
Only add_role('content_manager', 'Content Manager', ['edit_posts' => true, 'moderate_comments' => true]); correctly grants 'edit_posts' and 'moderate_comments' as true.