Cambiando 'admin', el nombre de usuario por defecto en WordPress

Cómo recuperar acceso como ‘super-admin’ en WordPress multiusuario

Desde la versión 3.0, WordPress permite utilizar el nombre que queramos para el usuario administrador de una web, mientras que en versiones anteriores, por defecto nos veíamos forzados a usar “admin” como nombre de usuario.

Por motivos de seguridad, conviene siempre cambiar este nombre de usuario, pero como no se puede hacer fácilmente desde el panel de control, la única solución (aparte de los plugins que pueda haber para hacer esto) es cambiarlo directamente desde la base de datos:

  1. Hacer una copia de seguridad de la base de datos
  2. Acceder a la base de datos (a través de phpMyAdmin o del sistema que utilice nuestro proveedor de alojamiento web)
  3. Examinar la tabla “wp_users” (si cambiaste el prefijo en el momento de la instalación, en vez de “wp_” verás el prefijo que pusiste)
  4. Editar la fila del usuario que queremos cambiar (normalmente la primera: “admin”)
  5. Cambiar el campo “user_login” que ahora pone “admin” por el nuevo nombre que queremos usar (seguramente el campo “user_nicename” también tenga el valor “admin”, pero eso lo podemos cambiar fácilmente desde el panel de control, no es necesario cambiarlo desde aquí)
  6. Guardar los cambios

O también, de una manera más rápida:

update wp_users set user_login='nuevo-nombre' where user_login='admin';

A partir de este momento, ya no podremos acceder al panel de control de WordPress con los datos antiguos y deberemos utilizar el nuevo nombre de usuario que hemos creado.

Hasta aquí ningún problema, ya que este proceso está perfectamente documentado en muchos sitios. Sin embargo, si tenemos una red de webs con WordPress 3 multiblog o multiusuario (antes WordPress Mu), esto no es suficiente. Si intentamos cambiar el nombre del usuario administrador siguiendo los pasos anteriores, nos encontraremos con que ya no podremos acceder como “Super Admin”, sinó como un administrador normal.

Después de seguir el proceso anterior, es necesario dar un paso extra:

  1. Examinar la tabla “wp_sitemeta”, que es donde se guardan algunos ajustes importantes del sistema. En la fila “site_admins” veremos esto: a:1:{i:0;s:5:”admin”;}
  2. Cambiar “admin” por el nuevo nombre que queremos utilizar (lógicamente, el mismo que hemos puesto antes en “user_login”). Contar las letras del nuevo nombre y sustituir el “5” por el nuevo número de letras del nombre de usuario. Es decir, si el nuevo nombre que queremos usar es “administrador”, el valor de la clave “site_admins” deberá quedar así: a:1:{i:0;s:13:”administrador”;}

Con esto habremos cambiado el nombre de usuario por defecto del usuario administrador con privilegios de ‘super-admin’. No es complicado, pero puede llevarnos bastante tiempo arreglar este problema si no conocemos este paso extra.

Más información (en inglés) en el foro de WordPress multiusuario:
http://wordpress.org/support/topic/recover-super-admin-access-after-username-change

Comentarios

  1. Javier

    Muchas gracias por el aporte me ha sido de mucho utilidad ;)

  2. Marcos

    Mi problema es que no puedo entrar al dashboard de WP, me da error de usuario, que es el mismo que esta en el config.php. ¿que puedo hacer? gracias.

  3. Daniel

    En ese caso, WordPress permite restablecer la contraseña de varias maneras: por email, por FTP, desde phpMyAdmin y a través de la linea de comandos de MySQL.

    Aquí tienes toda la información: http://codex.wordpress.org/Resetting_Your_Password

  4. Juan

    Ayuda por favor:
    Accedo a mi cuenta en wordpress, pero no tengo acceso a mi panel de control. Es como si no tuviera nada, tan solo la opción de crear un nuevo Blog. No soy demasiado ducho en estas cosas y necesito ayuda urgente, por favor.

    Gracias

  5. Daniel

    Sin más detalles es complicado saber dónde puede estar el problema: puede ser que la conexión con la base de datos no sea correcta, que estés accediendo a un sitio de la red en el que aun no se ha publicado contenido, que el usuario con el que has entrado no tiene privilegios suficientes para ver y/o publicar…

  6. jmarior

    Un buen hack. Gracias por el apunte.

  7. Juan Galo

    Hola Daniel:

    Aunque mi página juangalo.org accede perfectamente y no está corrompida, por favor, solicito tu ayuda ya que desde el pasado jueves día 14 de marzo no puedo entrar en mi panel de control.
    He consultado innumerables hilos del foro WordPress, pero sin éxito. He cambiado en mi Cpanel (phpMyadmin) la password pero sigo sin poder entrar en mi panel de control. He renombrado por FTP la carpeta plugings (aunque últimamente no he configurado ninguno). También renombré la carpeta Themes por si acaso, pero en ambos casos sin éxito.
    Estoy desesperado y ya no sé que hacer.
    Por favor, ¿puedes ayudarme?

    Gracias de antemano.
    Saludos cordiales.

  8. Daniel

    Hola Juan.
    En estos casos lo mejor es encontrar el problema por eliminación. Aquí tienes algunas ideas:

    – Desactivar los plugins. Puedes hacerlo desde phpMyAdmin. Aquí encontrarás cómo hacerlo: http://www.danielnabil.com/blog/desactivar-plugins-wordpress-sin-acceso-administracion/

    – Mirar los logs de errores del servidor

    – Activar wp_debug

    – Limpiar el archivo “functions.php” del tema activo

    – Comprobar que no tienes algún archivo “.htaccess” que bloquea la carga de las páginas del backend

  9. Jhon

    Hey men me sacaste de una tremenda,

    Algun desocupado pudo entrar, cambias mi user por admin y bajar mis privilegios. Pude cambiar el usuario y los privilegios. tengo el sitio en multisite, aun despues de recuperar permisos no puedo accesar al pane de administracion del multisitio que es donde se adicionan o se quitan plugins, plantillas etc. Que puedo hacer ahi. Gracias

  10. Daniel

    @Jhon: En ese caso deberías acceder a la base de datos a través de phpMyAdmin y hacer los cambios que se explican más arriba en esta entrada.

  11. Daniel

    Gracias! Me salvaste :)

  12. Ana

    Daniel no sé que le pasa a mi wordpress que no aparece la opción de apariencia para cambiar el color de fondo. Qué tengo que hacer para que aparezca?

  13. Daniel

    Hola Ana.
    Si no aparece el menú “Apariencia” en el menú puede ser por varias razones:

    1. Estás conectada como “Editor” u otro tipo de usuario con menos privilegios. Por defecto WordPress solo muestra el acceso a “Apariencia” a administradores.

    2. El tema que utilizas oculta este acceso por alguna razón (incluso para administradores). Si es así, habrá que buscar en el archivo functions.php o alguno similar si hay alguna linea que ponga algo como remove_menu_page( ‘themes.php’ )

    Si lo que no sale es la opción para cambiar el color de fondo, será que el tema que usas no lo tiene configurado. Aquí puedes ver cómo activarlo: http://codex.wordpress.org/Custom_Backgrounds

  14. valeria

    Hola, tengo un problema: puedo entrar a /wp-admin con un usuario pero este tiene restricciones. Hay muchas cosas que no puedo cambiar… La persona que creo el wp y que aloja mi pagina me dice que no sabe quien es el administrador… No entiendo mucho de wp. Como puedo obtener esta informacion? Alguien me ayuda?

  15. María

    Hola
    No sé que he hecho pero desde hoy, que ahora soy la única administradora de wordpress, he perdido la opción de añadir plugin.
    Quería cambiar mi nombre y creé otra administradora, eliminé mi perfil de administradora y creé uno nuevo, también como administradora, luego borré a la otra administradora que había creado, quedando sólo yo.
    Sólo que antes tenía el rol de administración y keymaster y ahora sólo administrador y no tengo el botón de añadir plugins… y quizá me falten más cosas…
    ¿Como puedo recuperar todos los permisos o arreglar esto.?
    Gracias, María

Y tú qué opinas?

Las URLs se convertirán en enlaces automáticamente. Tu dirección de email no se publicará ni se utilizará para enviar ningún tipo de información. Los mensajes que no aporten nada al tema que se trata en esta entrada se borrarán. Las imágenes que aparecen al lado de cada autor utilizan el servicio de Gravatar. Recuerda que puedes usar etiquetas HTML como <a href>, <code>, <em> o <strong> en los comentarios.

(necesario)

(opcional)