¿Cómo puedo añadir niveles de usuario nuevos a WordPress?
Suscriptor, Colaborador, Editor y Administrador. Esos roles están claros, y lo que permite o no hacer cada uno de ellos también pero… ¿y si quiero ampliar las capacidades de cada uno de esos roles? ¿Y si deseo crear algún rol concreto para que tenga permisos mixtos o pueda únicamente realizar una función como usar un plugin de reservas o un CRM?
En el artículo «Mostrar / Ocultar opciones en el panel de administrador» te explicábamos cómo personalizar los permisos de los roles. Y en esta 2da parte te enseñaremos 2 formas de crear roles nuevos.
¿Listo? ¡Pues vamos allá!
Resumen de contenidos
El Plugin, siempre el plugin
Aunque en Loopeando.com de vez en cuando recomendamos el uso de plugins, también procuramos dejar claro que, cuando de pequeñas cosas se trata, mejor meter mano al código para no sobrecargar el admin de software innecesario que ralentice la web. Recuerda que ¡cada segundo de más que tarde en cargar una web es público que pierdes!
En cualquier caso, si insistes en usar plugins para este menester, te recomendamos User Role Editor [Clic para descargar].
Este plugin es ligero y muy fácil de usar. Basta con instalarlo desde el repositorio, activarlo e ir a su menú en Usuarios –> User Role Editor
Una vez ahí pulsamos en «Agregar perfil» e incluso si lo deseamos, podemos asignarle las capacidades de ese nuevo rol. Aunque francamente, el sistema de permisos que tiene este plugin, es muy poco intuitivo y para ésto último recomendamos el plugin que comentábamos en el artículo complementario a éste: Adminimize
Si quieres hacer algo bien, hazlo tú mismo
Especialmente si es tan sencillo como crear roles:
Vamos al archivo functions.php de nuestra instalación de WordPress. Lo abrimos y agregamos esta función:
add_role( $rol, $nombre, $permisos )
Donde:
$rol: Nombre del rol para uso interno a nivel de programación. Por ejemplo: gestor_crm
$nombre: Nombre visible del rol. Nos servirá para identificarlo en el backend. Por ejemplo: Gestor CRM
$permisos: Array de todos los permisos que queramos asignarle.
Aquí una lista de los más comunes:
‘edit_posts’ => Permite crear /editar entradas nuevas
‘edit_pages’ => Permite crear / editar páginas
add_role( 'gestor_crm', __( 'Gestor CRM' ), array( 'edit_themes' => true, 'activate_plugins' => true, 'edit_plugins' => true, 'edit_users' => true, 'moderate_comments' => true, 'manage_categories' => true, 'edit_posts' => true, 'edit_pages' => true ) );
Tras ello, y cuando nos aseguremos de que el nuevo rol aparece en Usuarios –> Añadir nuevo, podemos eliminar la función creada puesto que esa información se almacenará en la base de datos.
Y recuerda, si ahora quieres que ese nuevo Rol sólo vea algunas opciones del menú de administrador, visita el siguiente post.
Si tienes dudas, no temas en preguntar y, si te ha gustado, nos encantaría que compartieses el artículo en tus redes. ¡Gracias!
Escribir comentario