La semana pasada tuvimos un caso de una web que teníamos que reparar pero no teníamos acceso administrador. Era urgente y el cliente no estaba accesible, así que, como teníamos acceso a la base de datos, creamos uno por SQL. Hoy os enseñamos a hacerlo. Cómo crear un usuario administrador en WordPress por base de datos. Lo primero es obviamente tener los datos de acceso a la base de datos y poder acceder a ella o por comandos de SQL o por (más fácil) phpMyAdmin. Una vez tenemos este acceso. Método gráfico (phpMyAdmin). Haz una copia de la base de datos. No debería decirlo…pero siempre se debe hacer antes de modificarla. Cuando no lo haces “porque es fácil” es cuando falla. Ve a la tabla wp_users. Ahí dale a Insertar y rellenamos los siguientes campos. Campos (pongo los esenciales): –ID: Hay que usar uno que no exista en la base de datos. Mira los que hay en esa tabla y pon un número que no esté en uso. Por ejemplo el 6. –user_login: El usuario que vamos a usar, el que queráis. Por ejemplo goduser. –user_pass: En valor tienes que poner la contraseña que quieres. Pero en función pon MD5 para que la meta encriptada y no en texto plano. Si no no sólo es un fallo de seguridad pero WordPress no la entenderá. –user_nicename: Es el nombre de usuario corto. Puede ser el mismo que el login o (por ejemplo) uno el e-mail y el otro el nombre de usuario. –user_email: el e-mail del usuario. –user_registered: Pon una fecha. Te abre un calendario para ponerlo fácilmente. –user_status: 0 –display_name: El nombre que se mostrará a otros usuarios o en publicaciones. Dale a Continuar y, si no hay error, ya tienes el usuario creado. Pero todavía no podrás entrar o no será admin. Ahora tienes que ir a la tabla wp_usermeta. De nuevo dale a Insertar y rellena los siguientes campos. Campos: – unmeta_id: No pongas nada. Lo pone el sistema. – user_id: El id que pusimos en la tabla wp_users. En el ejemplo 6. – meta_key: Pon esto: wp_capabilities –meta_value: Pon (verás que el otro admin también lo tiene): a:1:{s:13:”administrator”;b:1;} Dale a Continuar y debería grabarse esos valores. Todavía no está. Vuelve a insertar en esta misma tabla, wp_usermeta, otro registro con los siguientes campos. Campos: – unmeta_id: No pongas nada. Lo pone el sistema. – user_id: El id que pusimos en la tabla wp_users. En el ejemplo 6. – meta_key: Pon esto: wp_user_level –meta_value: 10 Dale a Continuar para que se guarde. Y ya estaría, ya podríais acceder al WordPress como administrador. Método por comandos SQL. Si no puedes usar phpMyAdmin te dejamos los comandos. Verás que son los mismos que hacemos en modo gráfico en el punto anterior. Haz copia de la base de datos. En la ventana de SQL con acceso a la base de datos pon los siguientes comandos. En azul puedes ver los valores que tienes que cambiar (mira arriba para la explicación): INSERT INTO ‘wp_users’ (‘user_login’, ‘user_pass’, ‘user_nicename’, ‘user_email’, ‘user_status’) VALUES (‘tuusuario‘, MD5(‘tucontraseña‘), ‘tunombrecorto‘, ‘tuemail‘, ‘0’); INSERT INTO ‘wp_usermeta’ (‘umeta_id’, ‘user_id’, ‘meta_key’, ‘meta_value’) VALUES (NULL, (Select max(id) FROM wp_users), ‘wp_capabilities’, ‘a:1:{s:13:”administrator”;s:1:”1″;}’); INSERT INTO ‘wp_usermeta’ (‘umeta_id’, ‘user_id’, ‘meta_key’, ‘meta_value’) VALUES (NULL, (Select max(id) FROM wp_users), ‘wp_user_level’, ’10’); Como veis aquí crea el usuario (el id se lo dará SQL) y luego usa el max(id) para coger el último id que se ha creado (el tuyo). Nota: Si tenéis problemas con los comandos cambiad (pones a mano) las comillas simples ‘. A veces al copiar pegar se ponen como otros valores.