Descubre en este tutorial cómo crear un nuevo rol de usuario de WordPress personalizado, sin plugins, mediante código.
Por defecto, WordPress tiene 5 roles de usuario:
- Suscriptor
- Colaborador
- Autor
- Editor
- Administrador

Además de estos, algunos plugins pueden añadir nuevos roles. Por ejemplo, WooCommerce crea dos más:
- Cliente
- Gestor de tienda

Ya has aprendido a eliminar los roles que no te interesen o incluso recuperarlos, pero ¿y si quieres generar un rol personalizado?
WordPress cuenta con la siguiente función que te facilita el proceso:
Snippet para crear un rol de usuario de WordPress personalizado
Para generar un nuevo rol de usuario puedes usar la función nativa de add_role(), que tiene la siguiente sintaxis:
add_role( $role, $display_name, $capabilities );
donde:
- $role: Nombre único del rol.
- $display_name: Nombre que se muestra en el panel de administración de WordPress.
- $capabilities: Privilegios del rol.
Añade el siguiente fragmento al final del fichero functions.php o plugin de funcionalidades:
Para ver este código y los otros 1953 snippets de esta web,
identifícate o suscríbete aquí.
Con este fragmento creas un nuevo rol con el nombre «Suscriptor +» que tiene capacidades para hacer lo mismo que un suscriptor más crear y editar sus propios posts.

Esto es solo un ejemplo, pero puedes jugar con todas las capacidades que te permite WordPress. Para conocerlas todas echa un ojo a su documentación sobre Roles and Capabilities.
Otra opción interesante sería darle acceso a ese nuevo perfil de usuario a un contenido restringido de la web. Esto puedes hacerlo de forma sencilla combinando la creación de un nuevo perfil con el plugin Restrict Content Pro.
Conclusión
Ahora ya sabes cómo generar un rol de usuario de WordPress personalizado, sin plugins, con un simple snippet de código.
Por cierto, recuerda que si tienes alguna pregunta puedes dejarla en los comentarios.
Y si quieres darme una sugerencia para próximos snippets, hazlo a través del formulario de contacto.
Todo ventajas de ser suscriptor. 😉