La administración de usuarios en un entorno multisitio de WordPress es una tarea compleja, pues implica muy diversas circunstancias en las que la aplicación se comporta de formas no siempre fáciles de comprender intuitivamente. A continuación detallamos sus aspectos más relevantes.
1. Alta de usuarios.
Con la configuración por defecto de un entorno multisitio de WordPress, los administradores de todos los blogs no pueden dar de alta nuevos usuarios, acción que solo puede llevar a cabo el superadministrador. Para conseguir que todos los administradores de todos los blogs disfruten de esta funcionalidad, es necesario que desde la página configuración del multisitio, menú Ajustes > Ajustes de red, se active la casilla correspondiente: «Permite a los administradores de sitio añadir nuevos usuarios a su sitio a través de la página «Usuarios -> Añadir nuevo». Cuando se da de alta a un nuevo usuario, hay que tener en cuenta que los nombres de usuario solo pueden tener caracteres en minúscula y números, sin espacios u otros signos del teclado.
El comportamiento normal de WordPress cada vez que el administrador de un blog da de alta un usuario es enviar a este un mensaje en el que se le pide que confirme la invitación. Cuando el usuario hace clic sobre dicho enlace se activa la cuenta creada, y el usuario accede a una página en la que se le muestra su nombre de usuario y su contraseña; además, WordPress le envía un correo electrónico con estos mismos datos. El nombre de usuario es el que ha dado de alta el administrador, pero la contraseña se genera de forma automática.
Conviene tener en cuenta que los usuarios que han sido invitados a participar e un blog solo tienen 48 horas para aceptar la invitación; pasado este plazo sin activar la cuenta, el administrador tendrá que cursar una nueva invitación. Por otro lado, a veces hay filtros antispam que interceptan estas invitaciones, por lo que conviene prestar atención a las carpetas a las que van a parar dichos mensajes, o bien utilizar servicios (como Gmail o Hotmail) que no utilizan dichos filtros.
Solo el superadministrador del sitio puede crear nuevos usuarios sin enviarles un email de confirmación. Para ello, desde el menú de cada blog (Usuarios > Añadir nuevo), tiene que marcar la casilla «Añadir el usuario sin enviarle un email de confirmación». Dado que el superadministrador siempre tiene acceso a toda la instalación, puede llevar a cabo esta accción en todos y cada uno de los blogs del sitio.
Es posible dar de alta a nuevos usuarios desde cada uno de los blogs, o bien desde la página de administración de la red de blogs. La diferencia entre ambas acciones es la siguiente:
- En el primer caso, el usuario no se activa hasta que éste recibe en su buzón el correo electrónico de invitación y hace clic sobre el enlace de confirmación.
- En el segundo caso, el usuario se activa desde el momento de la creación, incluso aunque no haya pulsado sobre el enlace de confirmación.
No se puede dar de alta a más de un usuario con la misma cuenta de correo electrónico, pero se puede utilizar el truco denominado Gmail+, que consiste en crear una cuenta de Gmail, por ejemplo, «loquesea@gmail.com» y luego desdoblarla en cuentas que tienen el siguiente aspecto: «loquesea+01@gmail.com», «loquesea+02@gmail.com», etc. Naturalmente, este truco tiene el inconveniente de que hay que gestionar muchos mensajes correspondientes a muchas personas diferentes, pero se pueden utilizar filtros y técnicas de organización para solventar el inconveniente.
En una instalación multisitio de WordPress, se pueden añadir usuarios nuevos o bien usuarios ya existentes en dicho entorno. En el primer caso, el usuario creado lo será únicamente del blog al que se le haya invitado; en el segundo, el usuario podrá serlo de varios blogs diferentes, con el mismo rol en todos ellos o con un rol diferente. De este modo, un usuario X puede ser administrador en su propio blog, editor en otro, autor en un tercero y así sucesivamente. La excepción a esta situación es la del superadministrador del entorno multisitio, que no pierde su rol de superadministrador en ninguno de los blogs, aunque pueda también tener diversos roles en diferentes blogs.
WordPress es muy riguroso a la hora de tratar la combinación de nombre de usuario+dirección de correo electrónico. Si intentamos dar de alta un usuario existente con una cuenta de correo que no es exactamente la que se le proporcionó en primera instancia nos devolverá un mensaje de error. Lo mismo hará si intentamos dar de alta a dos usuarios diferentes con la misma cuenta de correo.
Tanto el superadministrador como los administradores de los blogs individuales pueden en todo momento seleccionar qué rol tendrán los nuevos usuarios. Conviene sopesar cuidadosamente el rol asignado, para evitar que un usuario pueda tener capacidades que le habiliten para llevar a cabo acciones no deseadas; véase, a este respecto, la página Roles and Capabilities, en la que se detallan las capacidades correspondientes a cada uno de los roles de WordPress.
Por último, el superadministrador tiene la capacidad adicional de promover a un usuario (de forma temporal o definitiva) al rol de superadministrador; esta operación se lleva a cabo desde la página de administración de la red de blogs, yendo al menú Usuarios > Todos los usuarios; a continuación, se debe pulsar sobre el nombre de usuario elegido y activar la casilla «Dar permisos de super admin en la red a este usuario».
2. Edición de los datos de usuario.
El nombre de usuario creado para una cuenta de WordPress es definitivo, por lo que no se puede cambiar una vez creado. En cambio, los usuarios sí pueden cambiar el nombre que muestra el sistema, para lo cual deben ir al menú Usuarios > Tu perfil, y editar los campos de «Nombre», «Apellido» o «Alias». También es posible que cada usuario modifique su contraseña a voluntad, así como el resto de datos de su perfil: activar o desactivar el editor visual, modificar el esquema de colores del backend, añadir datos complementarios sobre la información de contacto, etc.
Por último, los usuarios tienen la capacidad de modificar la dirección de correo electrónico vinculada a su cuenta del sistema. Ahora bien, no pueden llevar a cabo esta acción directamente; si modifican dicha dirección, el sistema enviará a la nueva cuenta de correo electrónico un mensaje de confirmación. Mientras el usuario no haga clic sobre el enlace que se incluye en dicho mensaje, la dirección de correo no será modificada.
3. Alta de usuarios con contraseñas predefinidas.
Si al superadministrador de un sitio le interesa dar de alta a nuevos usuarios con una contraseña preestablecida (es decir, con una contraseña diferente a la que genera WordPress de forma aleatoria), debe hacer lo siguiente:
- Desde el menú Usuarios > Añadir nuevo del blog principal, debe crear nuevos usuarios, cada uno con su nombre de usuario y cuenta de correo electrónico. Para que el sistema no envíe un email de confirmación, deberá activar la casilla «Añadir usuario sin enviarle un email de confirmación».
- Entrar en el perfil de cada uno de los usuarios creados y modificar la contraseña generada automáticamente, escribiendo, dos veces, una nueva contraseña.
- Posteriormente, comunicar a los usuarios, de forma manual, sus datos.
- Si es necesario, dar de alta un nuevo sitio con los datos del usuario que se acaba de crear en los puntos anteriores.
Hay que tener en cuenta que este procedimiento puede dar lugar a confusiones o errores, ya que en el primer paso, incluso aunque se marque la casilla «Añadir usuario sin enviarle un email de confirmación», WordPress enviará la contraseña automáticamente generada. Si a continuación el superadministrador cambia manualmente dicha contraseña y no lo advierte a los usuarios de forma rápida y clara, estos pueden desorientarse.
Una alternativa a este procedimiento es utilizar un plugin de alta masiva de blogs o/y usuarios, como CSV User Import, Import Users From CSV, Simple Import Users o Batch Create (este último plugin probablemente es el mejor, pero exige suscripción y pago), que permite decidir, en el momento del alta de usuarios, cuáles son sus datos, incluida la contraseña. Una vez creados los blogs o/y los usuarios con dicho plugin, WordPress enviará mensajes de correo electrónico con los datos de usuario, contraseña, etc.
4. Eliminación de los avisos de alta de usuarios.
Si deseamos suprimir las notificaciones que WordPress envía al superadministrador del sitio cuando se da de alta a nuevos usuarios, hay que ir a la página de administración de la red de blogs, al menú Ajustes > Ajustes de red y desactivar la casilla «Enviar al administrador un correo electrónico cada vez que alguien se registre o registre un sitio». En cambio, la eliminación de las notificaciones que WordPress envía a los usuarios cuando estos son dados de alta es un procedimiento bastante más complicado, que exige utilizar uno o varios plugins que deshabilitan esta funcionalidad, o realizar operaciones manuales de edición del código.
david says
¿Es posible añadir mas campos a la hora del registro?, es decir aparte del usuario y contraseña me gustaria saber pais, direccion …
Administrador Curso WordPress 2012 says
Hay varios plugins que satisfacen esas necesidades, David. Por ejemplo, este: http://wordpress.org/extend/plugins/cimy-user-extra-fields/.
aron says
estoy creando una pagina con wordpress y tengo la opcion multisitio para que los usuarios creen su propio sitio , la duda es, he creado un usuario de prueba y un sitio de prueba para ver si fusiona todo iba de maravilla hasta la hora de visualizar el sitio creado por el usuario (en este caso usuario qye yo cree y sitio) no se visualiza solo la pagina en blanco saben a que se debe necesito ayuda?
Administrador Curso WordPress 2012 says
Con los datos que me das, Aron, poco puedo hacer para ayudarte. No obstante, en la mayoría de los casos el problema de la página en blanco se debe a un tema o plugin. Te recomiendo que desactives el tema del blog y actives el tema por defecto, a ver si el problema se soluciona.
Si persiste el problema, desactiva todos los plugins y luego actívalos uno a uno, comprobando a continuación cuál es el causante de la página en blanco.
También puedes activar la variable WP_DEBUG en el fichero wp-config.php; aquí tienes más información sobre cómo se hace: http://dreknoun.net/habilitar-modo-debug/. Recuerda desactivar el modo de depuración cuando hayas terminado.
Ruben says
Hola,
He hecho una instalacion multisitio de wordpress y tengo 3 sitios. El problema es que cuando un usuario se da de alta a traves de uno de los 3 sitios solo se da de alta para ese sitio. Me gustaria saber si hay alguna forma de hacer que al darse de alta en cualquiera de los 3 sitios valga para todos los sitios, es decir, compartir los usuarios dando igual en cual de los 3 sitios se haya registrado. Gracias y un saludo
Administrador Curso WordPress 2012 says
Lo que pretendes, Rubén, no pueden hacerlo los usuarios «normales» de WordPress multisitio por sus propios medios. Para conseguir que el mismo usuario (con el mismo email, claro) esté dado de alta en tres blogs, es necesaria una acción del superadministrador. Para ello, el superadministrador debe entrar en cada uno de los blogs y dar de alta al usuario en cuestión, con el rol que le interese en cada caso.
Esta acción también se puede hacer en bloque, mediante plugins que sean capaces de gestionar los usuarios de una instalación multisitio, como por ejemplo Add Existing Users o Batch Create, ambos plugins de pago: http://premium.wpmudev.org/project/add-existing-users/ y http://premium.wpmudev.org/project/batch-create/.
También hay algún plugin gratuito que puede servirte para esto, como http://wordpress.org/extend/plugins/add-multiple-users/, pero esta extensión no la conozco bien.
Ruben says
Gracias por la rapida respuesta!. Me volvi a instalar todo el multisitio en local e instale este plugin para la gestion de usuarios (que parece que hace lo mismo que los que me has dicho) : http://wordpress.org/extend/plugins/multisite-user-management/
Y bueno, parece que ya me daba de alta a los usuarios en todos los sitios. De hecho podia logearme en todos los sitios con el usuario que creaba, el problema es que no mantiene la sesion. Es decir, yo me logeo con un usuario, hago click en otra opcion del menu principal y me desconecta el usuario (me borra las cookies como si hiciera logout). Y da igual en cual de mis tres sitios lo haga, en todos me desconecta.
Tengo instalado el woocommerce y he pensado que lo mismo los problemas puedan venir por eso, pero no lo se seguro.
Gracias por la ayuda, un saludo!.
raul says
Hola, tengo un problema, antes del multisite, en mi pagina se podían registrar usuarios y podían acceder a sus cuentas. Ahora al instalar el multisite, quiero que la gente se registre como antes sin posibilidad de crear sitios y que puedan acceder a su cuenta.
Bueno al principio de instalar el multisite, la gente no se puede registrar porque aparece como deshabilitado, en el panel de administrador de wordpress por más que pongo la opción habilitada, me aparece deshabilitada, entonces me meto en el panel de red, en ajustes y en las opciones de registrar usuarios, si pongo la opción: de Solo las cuentas de usuario pueden ser creadas. La gente se puede registrar pero les aparece una pantalla en blanco que pone: Ya te has identificado. ¡No necesitas registrarte de nuevo!
El sitio que has estado buscando, ‘pagina web’/, no existe.
Si activo la opción de Pueden ser creados sitios y usuarios., la gente se puede registrar pero también crear sitios y eso no me interesa.
Quería saber cómo hacer para que se pueda registrar la gente como antes, y desde el panel de control de la página pueda borrar usuarios por ejemplo, porque esto solo lo puedo hacer desde el escritorio de red.
Gracias por la ayuda, un saludo.
Administrador Curso WordPress 2012 says
En primer lugar, Raúl, hay que configurar correctamente el proceso de registro de usuarios. Para ello, hay que ir al menú Mis sitios > Administrador de la red > Ajustes de red. Ahí, en el epígrafe «Permitir nuevos registros» tienes que activar la opción «Solo las cuentas de usuario pueden ser creadas». De ese modo, se podrán registrar nuevos usuarios, pero no nuevos sitios. Naturalmente, para que los usuarios puedan registrarse, tendrás que incluir algún widget de registro (hay muchos plugins que lo hacen posible); otra forma de conseguir el mismo efecto es incluir un enlace que lleve hacia la página de registro, que por defecto es http://miblog.com/wp-signup.php.
Hay que tener en cuenta que, cuando un usuario se registra en WordPress multisitio, por defecto se registra en todo el entorno de blogs (es decir, como usuario de todo el entorno), con el rol de suscriptor; esto explica que, para borrarlo, sea necesario acudir a la página de administración de la red de blogs. Aquí tienes un par de entradas de los foros de WordPress (en inglés) que explican esta funcionalidad: http://wordpress.org/support/topic/invdividual-wordpress-mu-registration-pageper-blog-registration y http://wordpress.org/support/topic/user-registration-per-blog.
Si quieres que los usuarios se registren como usuarios de un blog individual, y no de todo el entorno, necesitas un plugin. También tendrás que crear una plantilla de registro personalizada, solo para dicho blog. Creo que este plugin te puede servir para ambos propósitos: http://wordpress.org/extend/plugins/join-my-multisite/.
raul says
Muchas gracias, me ha ayudado tu respuesta para entender cómo funciona la gestión de usuarios y este plugin está muy bien
Un saludo
lauren says
Buenas, gracias por todo.
Como puedo hacer para dar de alta 191 usuarios a la vez, sin que tengan que cofirmarlo
.Gracias.
Administrador Curso WordPress 2012 says
Hay varios plugins que te permiten conseguirlo:
http://wordpress.org/plugins/import-users-from-csv/
http://wordpress.org/plugins/add-multiple-users/
http://premium.wpmudev.org/project/batch-create/ (de pago)
http://premium.wpmudev.org/project/add-new-users/ (de pago)
Varios de entre estos plugins te permiten obviar la confirmación del alta y el envío de mensajes a los usuarios.
JoseC says
Me gustaria saber si hay alguna manera que a la hora de hacer el registro de usuario, el site que se crea debe ser aceptado por el administrador y movido a la categoria que corresponda antes de enviar el mail de confirmación y contraseña para el usuario.
Administrador Curso WordPress 2012 says
Hay un plugin que tal vez te sirva para ese propósito, JoseC, aunque te advierto que yo no lo he probado: http://wordpress.org/plugins/moderate-new-blogs/
Lo que no entiendo es lo de mover el blog «a la categoría que corresponda». ¿Te refieres a la distinción entre blogs públicos, archivados, spam, borrados y adultos, o a otra cosa?
Jaime says
Hola!
¿Es posible hacer que los usurarios de los nuevos sitios que voy creando aunque sean administradores no puedan ver los demás sitios de la red como los puede ver el superadmin?, es decir, no me interesa que desde todos los sitios se pueda ir al escritorio de los demás sitios de la red solo desde el sitio principal
Administrador Curso WordPress 2012 says
No estoy seguro de entender tu pregunta, Jaime. Cuando dices que no quieres que los usuarios de los nuevos sitios puedan ver los demás sitios de la red como los puede ver el superadministrador, ¿a qué te refieres exactamente?, ¿a que no puedan navegar por los demás sitios, o a que no puedan acceder al backend de esos sitios?
Por defecto, en una instalación multisitio de WordPress, todos los usuarios que se añaden a la red tienen el rol de suscriptor en todos los blogs, pero solo eso. Aquí tienes una explicación algo más detallada (en inglés): http://wordpress.org/support/topic/multisite-and-user-registration#post-1661414.
Esto implica que todos los usuarios de la red pueden acceder al backend del blog principal como suscriptores y, por supuesto, a los blogs en los que hayan sido dados de alta, con el rol correspondiente. Ahora bien, un usuario administrador del blog B no puede acceder a la administración del blog C y viceversa.
Como te he dicho al principio, no estoy seguro de haber entendido tu pregunta, pero hay varias entradas en los foros de WordPress que tratan asuntos parecidos al tuyo, y en ellas se mencionan varios plugins que pueden ayudarte:
http://wordpress.org/support/topic/restrict-access-to-a-mu-sub-blog
http://wordpress.org/support/topic/restrict-user-access-to-just-one-of-the-multisites
http://wordpress.org/support/topic/restrict-access-to-users-of-one-site-to-another-that-is-on-the-same-multisite
Jaime says
Muchas gracias por la respuesta!
Yo me refiero a que no puedan acceder al puedan acceder al backend de esos sitios.
Ejmplo: Mi sitio principal es A y tengo otros sitios B y C. No quiero que los usuarios de B y C se puedan ver los backends entre ellos, es decir, que solo puedan administrar sus propios sitios.
Saludos
Administrador Curso WordPress 2012 says
Por defecto es así en WordPress multisito, Jaime. Si el usuario B es administrador del sitio B, no podrá acceder a la administración del backend del sitio C, y viceversa.
En todo caso, si quieres reforzar la privacidad de los sitios, prueba con las opciones adicionales que te ofrecen estos dos plugins:
http://wordpress.org/plugins/more-privacy-options/
http://wordpress.org/plugins/network-privacy/
Greaciano says
Hola!
Primero de todo quería felicitarte por tu página, me parece que estás realizando un trabajo excepcional.
Mi cuestión es la siguiente. Usando Cimy user extra fields he aumentado los campos de registro. Ahora estoy intentando hacer lo siguiente. Me gustaría que cuando un usuario pretenda darse de alta y rellene el formulario, el administrador tenga que aceptar el alta del usuario. Los datos del formulario deben grabarse en cada uno de los campos del usuario. Por último se debería enviar un correo al usuario registrado, con su clave de acceso y su nombre de usuario (no se si sería posible que la clave de acceso se generase automáticamente).
Saludos y gracias de antemano.
Administrador Curso WordPress 2012 says
No conozco ese plugin, Greaciano, pero he consultado la página que le dedica el autor, y en ella se responde a los dos asuntos que tú planteas: http://www.marcocimmino.net/cimy-wordpress-plugins/cimy-user-extra-fields/faq-and-comments/:
1. El plugin no está diseñado para que el administrador apruebe las altas.En su respuesta a uno de los comentaristas, el autor lo deja muy claro: «[…]there is no way to see “pending” registered users, also because you are not the approver, they have to confirm themself».
En un hilo de los foros de WordPress se toca también este asunto: http://wordpress.org/support/topic/plugin-cimy-user-extra-fields-approve-users-first-option. Ahí el autor vuelve a confirmar que su plugin no permite enviar un mensaje al administrador para que este apruebe (o no) el registro.
En la última intervención de ese mismo hilo se indica que no hay ningún plugin para WordPress que disponga de esa funcionalidad. Afortunadamente esto no es verdad, ya que existe un plugin, Register Plus Redux, que lo hace posible: http://wordpress.org/plugins/register-plus-redux/
2. El envío de los datos de usuario y contraseña es el comportamiento estándar de WordPress cuando un usuario se registra (o cuando es registrado por un administrador). Es decir, WordPress le envía en ambos casos un email con su nombre de usuario y una contraseña aleatoria. Ahora bien, para que eso ocurra, el servidor debe poder enviar correos, cosa que no ocurre siempre.
xavier says
Hola, buena noches,
Me gustaría crear un portal que tuviera diferentes funcionalidades. Al principio tenia pensando en poner un theme y de ahí colgar distintos plugins pero he visto que es mejor tener diferentes temes explícitos para cada funcionalidad. Por ejemplo tener un servicio de directorio que serviría el theme «directora» y otro de noticias con el theme «newspaper».
Estas funcionalidades irian hospedadas en subdominios diferentes. Por ejemplo directorio.portal.com y noticias.portal.com.
Mis preguntas son:
1) podría implantar esta solución mediante un wordpress multisitio?
2) si un usuario se registra automáticamente en uno de los subdominios (por ejemplo se da de alta en noticias.portal.com), podrá acceder a directorio.portal.com sin problema, es decir, no hara falta que se vuelva a dar de alta, no?
Muchas gracias!!! ;)
Xavier.
Claudio says
Hola, esyoy armando un blog para un cliente, pero necesito poder realizar lo siguiente:
– Que solo exista un usuario con el rol de»administrador», que seré yo
– Crear un nuvo rol de usuario que podría llamarse «propietario» y poder determinar que accesos permitidos tendrá, entre los cuales debe poder ingresar nuevos usuarios, pero que no podran ser de rol «administrativos». Es más no debe aparecer este rol como opción
– Que el usuario cuyo rol sea «propietario», al listar los usuarios existentes, no aparezca el unico usuario «administrativo» que vendría a ser yo.
Se puede hacer algo así?. Desde ya Gracias
Lorenzo says
Hola, es posible que la «ficha» el usuario sea igual para todas las webs del multidominio?
Administrador Curso WordPress 2012 says
No estoy del todo seguro de entender tu pregunta, Lorenzo, pero en un entorno multisitio de WordPress todos los usuarios son usuarios de la red de sitios o blogs. Por tanto, los metadatos de cada usuario son los mismos en todos los blogs donde esté dato de alta, y también su «ficha» será la misma. Si das de alta en el blog A al usuario X, con la cuenta de correo usuarioa@loquesea.com, y luego ese mismo usuario es dado de alta en el blog, la «ficha» del usuario X será la misma tanto en el blog A como en el blog B, ya que su perfil de usuario es único.
Lorenzo says
has dado una respuesta muy acertada sobre lo que buscaba.
ahora mi pregunta, si la cosa es como dices ¿porque solo me sale el avatar en la «web» donde lo subo y no en toda la red?
Administrador Curso WordPress 2012 says
Como no conozco las condiciones en que has dado de alta el usuario, no puedo precisar mucho la respuesta, Lorenzo. Ahora bien, aunque el usuario X lo sea de todo el multisitio, no aparecerá en el blog A a no ser que tenga un rol en dicho blog. Es decir, si un usuario X está dado de alta en el blog A y no en el blog B, no aparecerá como usuario de este último blog.
Si vas al menú de administración del multisitio > Usuarios, ahí verás todos los usuarios del multisitio, y de qué blogs o sitios son usuarios. Un usuario puede serlo de un sitio, de dos, o de todos.
Edixon says
Buenas quiero hacer un multisite donde cada persona que entre a mi pagina cree su propia pagina. Podrías orientarme de como colocar en mi pagina inicial la opción para que cada persona que quiera pueda registrarse.
Muchas gracias y feliz dia
Administrador says
No sé muy bien lo que quieres decir, Edixon, cuando indicas que quieres que «cada persona que entre a mi pagina cree su propia pagina». Si lo que quieres decir es que deseas que cada persona cree su propio blog dentro de tu multisitio, entonces tienes que ir al menú de administración del multisitio, opción Ajustes > Ajustes de la red, y activar la opción «Pueden registrarse sitios y cuentas de usuario», dentro de la sección «Permitir nuevos registros».
Posteriormente, puedes elaborar una página en la que expliques las condiciones para crear un blog, e incluir dentro de ella un enlace a la siguiente dirección, que corresponde a la página de alta de usuarios: http://misitio.com/wp-signup.php.
Con esta opción activada, cualquiera podrá darse de alta en el multisitio y crear su propio blog. Ahora bien, esta es una opción «peligrosa», pues puede provocar que se den de alta en tu sitio cientos o miles de usuarios, con cientos o miles de blogs.