Al escribir complementos de WordPress, a menudo es necesario configurar opciones para qué roles en el sitio tienen acceso a cierta funcionalidad o contenido. Para hacer esto, un desarrollador de complementos debe buscar la lista de roles que existen en el sitio para usar en la opción. Debido a que se pueden crear roles personalizados, no podemos asumir que los roles predeterminados son los únicos disponibles.
¿Cuál es la mejor manera de obtener la lista?
security
users
capabilities
user-roles
jerclarke
fuente
fuente
Respuestas:
Los roles se almacenan en la variable global
$wp_roles
.La función ideal es
get_editable_roles()
de/wp-admin/includes/user.php
La parte "editable" se debe a que ofrece a otros complementos la posibilidad de filtrar la lista en caso de que alguien que no sea administrador tenga
'edit_users'
privilegios (y, por lo tanto, 'admin' deba eliminarse de la lista, de lo contrario, ese usuario podría hacerse administrador). Los complementos de administración de roles utilizados para crear roles personalizados son los que usarían ese filtro. De lo contrario, esta función es esencialmenteget_roles()
(que no existe) .Presumiblemente, su complemento solo ofrecerá la página de configuración en cuestión a alguien que tenga capacidades de nivel de administrador
'manage_options'
y que sea básicamente un administrador con acceso a todas las funciones, por lo que el filtro no debería afectarlo.También existe el
wp_dropdown_roles()
que le brinda los roles como<option>
campos para una<select>
lista (aunque es probable que las casillas de verificación funcionen mejor en muchos escenarios en los que elige quién tiene acceso a algo) .fuente
Prueba esto:
PD je, perdí esa explicación y respuesta, demasiado rápido yo :)
fuente
Aquí es cómo puede encontrar la lista de roles sin complementos o funciones http://screencast.com/t/uaWsGLAR3Sh
fuente
Para aquellos que tienen un sitio multilingüe, funcionen
devuelve una matriz localizada como esta (los nombres de los roles están en idioma eslovaco):
fuente
Así es como se obtiene una matriz de todos los roles de usuario existentes y las capacidades para cada rol en WordPress. Si no desea imprimirlo en la pantalla, omita la última línea. La variable $ roles en la línea 2 contendrá la variedad de usuarios y capacidades para que pueda usarla como lo necesite. Vea a continuación un ejemplo de la matriz devuelta.
fuente