Multisite WordPress: Gestionar usuarios

Home » Blog » Multisite WordPress: Gestionar usuarios

La gran diferencia entre los usuarios estándar de WordPress y el multisite está en que en el primer caso todos los usuarios tienen acceso, con roles y permisos diferentes. Pero en Multisite tenemos usuarios para unos sitios y otros para otros, por lo tanto requiere gestionarlos en nuestros plugins.

Funciones

Cuando queremos programar para los usuarios de multisite debemos comprobar que pertenecen al sitio que están intentando acceder.

<?php if (is_user_member_of_blog()){
//entra
}?>

Esta función por defecto comprueba al usaurio logueado actualmente y recoge el id_blog del tema actual, y comprueba si ese usuario es miembro de ese tema, pero podemos pasarle 2 variables:

<?php if (is_user_member_of_blog($user_id,$blog_id)){ 
//entra 
}?>

En este caso comprueba si un usuario user_id, es miembro del blog blog_id.

También tenemos funciones para añadir o borrar un usuario:

add_user_to_blog($blog_id, $user_id, $rol);

remove_user_to_blog($$user_id, blog_id, $user_id_reasignar);
  • $blog_id => es al sitio al que le añadimos, o del que borramos. (un usuario puede pertenecer a varios sitios, así que hay que tener cuidado con pásarle de que blog queremos borrarlo).
  • $user_id => El id_usuario que vamos a añadir al blog.
  • $rol => permisos de acceso del usuario. Listado de roles.
  • $user_id_reasignar => Cuando vamos a borrar un usuario de un sitio hay que tener en cuenta que ese usuario puede tener entradas creadas, este campo lo que hace es asignarle esas entradas al id_usuario que indiquemos. este valor es opcional.

Por último, podemos recuperar todos los sitios a los que pertenece un usuario:

$array_sitios=get_blogs_of_user(3);
foreach ($array as $datos){echo $datos->blogname;}

Recogemos los sitios del usuario 3 en una variable y mostramos por pantalla el nombre de esos blogs.

Súper administradores

Al instalar multisite, WordPress crea el perfil de súper administrador, que tiene control total sobre todos los sitios y sobre funcionalidades de la red global.

Tenemos funciones para recuperar todos estos súper administradores:

print_r(get_super_admins());

Podemos confirmar si el usuario logueado es súper administrador:

if (is_super_admin(38)){//si}else{//no}

Podemos convertir un usuario en súper admin:

grant_super_admin(2);

En este caso el id_usuario 2 pasará a ser un súper administrador. Y con revoke_super_admin(2) le quitamos este poder.


Categorías


Foto de Iñigo Mezo Alvarez

IÑIGO MEZO ALVAREZ (IMAcreste)


Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Las reseñas son opiniones que las personas dejan en la página local de Google. Si son positivas, estas reseñas ayudarán a mejorar la confianza y credibilidad de una marca.

Participa en nuestro sorteo enviando un email con tu nombre y el asunto «Sorteo AUDITORÍA SEO». Se realizara un sorteo cada mes.