Recuperar la contraseña de WordPress: 5 métodos que funcionan

A WordPress developer at a laptop, terminal window open showing PHP code, dark theme editor with wp_set_password function ...

Perder el acceso a tu WordPress es más frecuente de lo que parece. El correo de recuperación no llega, el servidor de correo está caído, o simplemente el email registrado ya no existe. Antes de entrar en pánico, hay al menos cinco caminos para volver a entrar, cada uno adecuado a una situación distinta. Te los explico de más sencillo a más técnico.

1. El enlace «¿Olvidaste tu contraseña?» (el camino más rápido)

Si tienes acceso al email registrado en tu cuenta, este es el método estándar: ve a tudominio.com/wp-login.php, haz clic en ¿Olvidaste tu contraseña? e introduce tu nombre de usuario o email. WordPress te manda un enlace de restablecimiento. Sencillo y sin riesgos.

El problema aparece cuando el email no llega. En ese caso, revisa primero el spam y confirma que el servidor SMTP de tu hosting está configurado correctamente. Si el hosting bloquea el envío nativo de PHP, instalar un plugin SMTP como WP Mail SMTP soluciona el problema de raíz.

2. Cambiar la contraseña desde phpMyAdmin

Si tienes acceso al panel de control de tu hosting (cPanel, Plesk u otro), puedes cambiar la contraseña directamente en la base de datos:

  1. Entra en phpMyAdmin desde tu panel de hosting.
  2. Selecciona la base de datos de tu WordPress.
  3. Abre la tabla wp_users (el prefijo puede variar si lo cambiaste).
  4. Haz clic en Editar junto a tu usuario.
  5. En el campo user_pass, selecciona la función MD5 e introduce la nueva contraseña.
  6. Guarda los cambios.

También puedes hacerlo con una consulta SQL directa desde la pestaña SQL de phpMyAdmin:

UPDATE wp_users SET user_pass = MD5('NuevaContraseña') WHERE user_login = 'tuUsuario';Lenguaje del código: JavaScript (javascript)

Sustituye NuevaContraseña y tuUsuario por tus datos reales. Después de guardar, inicia sesión normalmente en WordPress y cambia la contraseña desde tu perfil de usuario para que quede cifrada con el algoritmo moderno de WordPress (phpass), no solo MD5.

3. WP-CLI: el método preferido si tienes acceso SSH

Si tu hosting ofrece acceso SSH y tienes WP-CLI instalado, cambiar la contraseña es una línea de terminal:

wp user update tuUsuario --user_pass='NuevaContraseña' --path=/ruta/a/tu/wordpressLenguaje del código: JavaScript (javascript)

WP-CLI cifra la contraseña correctamente con el sistema nativo de WordPress, sin pasar por MD5 manual. También puedes listar los usuarios para identificar el ID o login correcto:

wp user list --fields=ID,user_login,user_email,rolesLenguaje del código: PHP (php)

Este método es el más limpio: no toca ficheros PHP, no expone contraseñas en texto plano y deja el sitio en un estado consistente.

4. Añadir wp_set_password() al functions.php (el truco del FTP)

Este es el método original de este tutorial: si tienes acceso FTP pero no a la base de datos ni a SSH, puedes añadir temporalmente una función al functions.php de tu tema activo que restablezca la contraseña al cargar cualquier página.

add_action( 'init', function() {
    $usuario_id = 1; // Cambia esto al ID real de tu usuario
    $nueva_contrasena = 'MiNuevaContraseñaSegura2024!';
    wp_set_password( $nueva_contrasena, $usuario_id );
} );Lenguaje del código: PHP (php)

El número 1 es el ID de usuario (el administrador principal suele ser siempre ID 1). Sube el fichero modificado por FTP, abre cualquier URL de tu WordPress en el navegador (eso ejecuta el hook init), luego inicia sesión con la nueva contraseña y, lo más importante, elimina inmediatamente ese código del functions.php y vuelve a subir el fichero limpio.

Dejar esa función activa es un riesgo de seguridad crítico: cualquiera que cargue el sitio resetearía la contraseña sin saberlo. Úsala, entra, elimínala. Sin excepción.

5. Emergency Password Reset Script

WordPress incluye en su repositorio oficial un script de emergencia (emergency.php) diseñado exactamente para estos casos. Lo subes a la raíz de tu instalación por FTP, accedes a él desde el navegador, introduces el nuevo password y lo borras. El script usa las funciones nativas de WordPress para el cifrado, así que el resultado es equivalente a cambiarlo desde el panel.

Puedes encontrarlo en el Codex oficial de WordPress sobre recuperación de contraseña. Descárgalo solo desde fuentes oficiales.

Bloquear ataques de fuerza bruta después de recuperar el acceso

Si alguien comprometió tu contraseña, recuperar el acceso es solo el primer paso. Conviene tomar medidas adicionales:

  • Cambia el prefijo de las tablas si aún es wp_ por defecto.
  • Activa la autenticación en dos pasos con plugins como Two Factor o WP 2FA.
  • Limita los intentos de login con Limit Login Attempts Reloaded o similar.
  • Revisa qué usuarios existen y elimina cuentas administrativas que no reconozcas.
  • Cambia las claves secretas de wp-config.php (Security Keys) para invalidar todas las sesiones activas.

Para una visión completa de medidas de protección, revisa nuestra guía sobre seguridad en WordPress y el artículo sobre configuración del .htaccess, donde encontrarás reglas para bloquear bots y accesos no deseados.

¿Qué método usar según tu situación?

SituaciónMétodo recomendado
Tienes acceso al email registradoEnlace «Olvidé mi contraseña»
Tienes acceso a phpMyAdminSQL en wp_users
Tienes SSH y WP-CLIwp user update
Solo tienes FTP, sin BD ni SSHwp_set_password() en functions.php
Necesitas solución de emergenciaemergency.php de WordPress.org

Preguntas frecuentes

¿Es seguro poner la contraseña en el functions.php?

Solo si lo haces durante el tiempo mínimo imprescindible. El código que añades al functions.php se ejecuta en cada carga de página, así que la contraseña queda visible en texto plano en el servidor. Úsalo solo como recurso de emergencia, entra al panel y borra el código de inmediato. Nunca lo dejes activo más de unos minutos.

¿Por qué no me llega el email de recuperación de contraseña?

WordPress usa la función wp_mail() que a su vez usa la función mail() de PHP. Muchos hostings tienen esta función limitada o directamente bloqueada para evitar spam. La solución más fiable es configurar un servidor SMTP externo usando un plugin como WP Mail SMTP o FluentSMTP con las credenciales de Gmail, SendGrid u otro proveedor de email transaccional.

¿Cuál es el ID del usuario administrador en WordPress?

El primer usuario creado durante la instalación de WordPress recibe el ID 1. Si tienes dudas, puedes verificarlo en phpMyAdmin mirando la tabla wp_users, o con WP-CLI ejecutando wp user list. En instalaciones de red (multisite), los IDs pueden variar.

¿Qué pasa si olvido eliminar el código del functions.php?

Cada visita al sitio ejecutará wp_set_password() y restablecerá la contraseña al valor que pusiste en el código. Esto significa que si cambias la contraseña desde el panel, al siguiente visitante del sitio la resetea de nuevo. Además, la contraseña queda expuesta en texto plano en un fichero accesible por FTP. Bórralo en cuanto entres.

¿WP-CLI puede recuperar la contraseña sin acceso al panel?

Sí. WP-CLI funciona desde la línea de comandos del servidor, completamente independiente del panel de WordPress. Con wp user update 1 --user_pass='nuevaPass' cambias la contraseña del usuario ID 1 sin necesidad de estar logueado en WordPress. Solo necesitas acceso SSH al servidor donde está alojado el sitio.

Si trabajas habitualmente con la línea de comandos, consulta también nuestra guía sobre el hardening de WordPress para aplicar medidas preventivas que eviten llegar a esta situación.

David Carrero Fernández-Baillo

Experimentando con un sitio web sobre WordPress, este popular gestor de contenidos, entre otros muchos proyectos.

Te puede interesar...

    Comments are closed

    WordPress Directo
    WPDirecto.com es una revista especializada en WordPress y WooCommerce que ofrece una amplia gama de recursos, incluyendo tutoriales, análisis de plugins y plantillas, consejos de optimización y estrategias de SEO, para ayudar a los usuarios a mejorar y personalizar sus sitios web, manteniéndolos informados sobre las últimas novedades y tendencias en el mundo de WordPress.

    © 1995-2025 Color Vivo Internet, SLU (Medios y Redes Online).. Otros contenidos se cita fuente. Infraestructura cloud servidores dedicados de Stackscale.