WordPress roles (Subscriber to Admin) and capabilities — create custom roles for membership sites.
User Roles and Capabilities
# Built-in roles
# Subscriber -- read only
# Contributor -- write own posts
# Author -- publish own posts
# Editor -- manage all posts
# Administrator -- full control
// Check capability
if (current_user_can('manage_options')) {
// show admin settings
}
// Current user
$user = wp_get_current_user();
echo $user->user_email;
// Custom role
add_role('premium_member', 'Premium Member', [
'read' => true,
'access_courses' => true,
]);
// Add cap to role
$role = get_role('editor');
$role->add_cap('manage_ads');
// REST permission callback
'permission_callback' => function() {
return current_user_can('access_courses');
}