Si el administrador ha iniciado sesión
2 ago 2013, 19:46:29
Vistas: 43K
Votos: 12
Sabemos que is_admin()
verifica si la URL actual pertenece al PANEL DE CONTROL (PERO no verifica si el usuario es ADMINISTRADOR).
Entonces, uso esta función para detectar si un administrador ha iniciado sesión en WordPress:
function is_admin_user(){
require_once(ABSPATH.'wp-includes/pluggable.php'); return current_user_can('create_users'); //o 'manage_options'
}
sin embargo, esa no es la solución ideal. ¿Existe alguna función incorporada, como wp_is_administrator()
?

T.Todua
5.85K
Comentarios
Todas las respuestas a la pregunta
2
0
current_user_can
aceptará un nombre de rol pero, lamentablemente, el comportamiento con los roles no es completamente consistente.
Lo siguiente debería funcionar y es un poco más simple que lo que tienes.
$current_user = wp_get_current_user();
if (user_can( $current_user, 'administrator' )) {
// el usuario es un administrador
}

s_ha_dum
65.5K
2 ago 2013 21:41:36
0
Parece que la forma más simple sería de hecho usar current_user_can de esta manera:
if( current_user_can( 'administrator' ) ){} // solo si es administrador
Esto parece un duplicado.

Adal
287
13 feb 2019 22:16:37
Preguntas relacionadas
7
respuestas
4
respuestas