Necesito obtener el rol asociado con un usuario, no el "usuario actualmente conectado".
Estoy usando Buddypress (no debería importar la naturaleza de esta pregunta) y estoy al tanto bp_members().
¿Cómo puedo recuperar el rol del usuario sobre el que estoy informando en el bucle en un momento dado?
Gracias.
user-roles
frank13
fuente
fuente

Si
bp_membersdevuelve una matriz deWP_Userobjetos, cada uno debe tener una propiedadrolesque contenga una matriz de los roles de los usuarios.De lo contrario, puede usar
get_user_metala clavewp_capabilities, que devolverá una matriz derole => capabilitypares:fuente
$user->IDpapel de. Solo un rol, ya que no hay usuarios en nuestro sistema, se les asigna más de 1 rol.$roles[0], hecho.Según tengo entendido, probablemente cambió con los años, ahora no lo es
'wp_capabilities'. Miré los archivos principales de WP, cómo lo hacen ahora, y encontré una nueva solución para esto. Aquí está el código que uso ahora:$capluego viene como una matriz asociativa, por ejemplo:o
Entonces, en su caso, probablemente debería obtener las claves de la matriz:
y luego obtener todo de él. Necesitaba ver si el usuario tenía el rol de administrador, así que verifiqué:
Tenía una identificación de usuario, no todo el
WP_Userobjeto, y no quería usar ninguna solución que creara eluserobjeto. Como verifiqué,get_user_metava directamente a la base de datos para verificar este parámetro exacto, por lo que esta debería ser la ruta más rápida y en cuanto a recursos.fuente