Guía para cambiar la contraseña de administrador de PrestaShop en cPanel
¿Por qué necesitas cambiar la contraseña de administrador de PrestaShop?
Olvidar la contraseña de tu tienda online es más común de lo que parece, especialmente si gestionas varios proyectos o llevas tiempo sin entrar al panel de administración. También puede que necesites cambiarla por motivos de seguridad, porque un empleado dejó la empresa o simplemente porque quieres usar una clave más robusta.
En este artículo te voy a enseñar varios métodos infalibles para cambiar la contraseña de administrador de PrestaShop usando cPanel. No necesitas ser un experto en programación: te lo explico paso a paso, con un lenguaje claro y directo, para que lo resuelvas en menos de 10 minutos.
La buena noticia es que no importa si tu PrestaShop es muy antiguo o de última generación: los métodos que te voy a mostrar funcionan en la mayoría de versiones, desde la 1.6 hasta la 8.x.
Antes de empezar: qué necesitas tener a mano
Para realizar cualquiera de los procesos que te explicaré a continuación, necesitas:
- Acceso a cPanel de tu hosting (usuario y contraseña).
- El nombre exacto de la base de datos de tu PrestaShop (lo puedes ver en el archivo
config/settings.inc.phpen versiones antiguas oapp/config/parameters.phpen versiones modernas). - Un editor de texto como el Bloc de notas o, mejor aún, Notepad++.
- Ganas de hacerlo bien a la primera 😉.
[WARNING]
Antes de tocar nada, haz una copia de seguridad de tu base de datos. Si algo sale mal, podrás restaurarla sin perder información de clientes, pedidos o productos. En cPanel, usa la herramienta "Copias de seguridad" o "Backup" para descargar un archivo .sql completo.
Método 1: Cambiar la contraseña directamente en la base de datos (el más fiable)
Este es, sin duda, el método más recomendado y el que funciona siempre, incluso si no recuerdas absolutamente nada de tu tienda. La idea es sencilla: actualizar el hash de la contraseña directamente en la tabla de empleados de la base de datos MySQL.
Paso 1: Accede a phpMyAdmin desde cPanel
- Inicia sesión en cPanel con tus credenciales.
- Busca la sección "Bases de datos" y haz clic en "phpMyAdmin".
- En el panel izquierdo, verás la lista de bases de datos. Haz clic en el nombre de la base de datos de tu PrestaShop (normalmente empieza con el prefijo de tu cuenta, por ejemplo
usuario_prestashop).
Paso 2: Localiza la tabla de empleados
Dentro de la base de datos, busca una tabla que se llame ps_employee. El prefijo ps_ puede variar si lo cambiaste durante la instalación (podría ser shop_, presta_, etc.), pero el nombre de la tabla siempre termina en _employee.
Haz clic en esa tabla para ver su estructura y sus filas.
Paso 3: Genera un nuevo hash de contraseña
PrestaShop no guarda las contraseñas en texto plano, sino encriptadas con un algoritmo llamado bcrypt. No puedes escribir "miNuevaClave" directamente, porque no funcionará. Necesitas generar un hash válido.
Tienes dos opciones:
Opción A: Usar el generador online de PrestaShop (recomendada)
- Ve a un sitio web como https://www.phpbb.com/online/ o busca "generador bcrypt online". También puedes usar el generador oficial de PrestaShop si lo encuentras.
- Introduce la contraseña que quieres usar (por ejemplo:
MiNuevaClave2024#). - Copia el hash que te devuelve (empezará por
$2y$10$...o similar).
Opción B: Generarlo tú mismo con un pequeño script PHP
- Crea un archivo llamado
generar_hash.phpen la raíz de tu hosting (carpetapublic_html). - Pega este código:
<?php
echo password_hash('TuNuevaContraseña', PASSWORD_BCRYPT);
?>
- Guárdalo y accede a
https://tudominio.com/generar_hash.php. - Copia el resultado que aparece en pantalla.
- Borra el archivo inmediatamente después de usarlo, por seguridad.
Paso 4: Actualiza la tabla de empleados
- En phpMyAdmin, haz clic en la pestaña "Editar" (o el icono de lápiz) junto al usuario administrador que quieras cambiar (normalmente el que tiene
id_employee = 1). - Busca la columna
passwd. - Borra el contenido que hay y pega el hash que has generado en el paso anterior.
- Haz clic en "Continuar" o "Guardar".
Paso 5: ¡Entra en tu tienda!
Ahora ve a https://tudominio.com/admin (o la URL de tu panel de administración) e inicia sesión con el nombre de usuario que tenías y la nueva contraseña.
[TIP]
Si no recuerdas ni el nombre de usuario, mira en la misma tablaps_employee, en la columna
Método 2: Recuperar contraseña PrestaShop desde cPanel usando un script SQL
Este método es muy similar al anterior, pero en lugar de usar phpMyAdmin con clics, ejecutas una consulta SQL directamente. Es útil si estás más cómodo con comandos o si prefieres hacerlo todo desde cPanel.
Paso 1: Accede a la herramienta de consultas SQL
- En cPanel, busca la sección "Bases de datos" y haz clic en "MySQL® Databases" o directamente en "phpMyAdmin".
- Dentro de phpMyAdmin, selecciona tu base de datos.
- Haz clic en la pestaña "SQL" (arriba, normalmente).
Paso 2: Ejecuta la consulta
Escribe la siguiente consulta SQL, reemplazando los valores entre corchetes:
UPDATE ps_employee SET passwd = '$2y$10$el_hash_que_generaste' WHERE email = 'tu_correo_admin@ejemplo.com';
Es decir, necesitas el hash generado y el correo electrónico del administrador.
Paso 3: Comprueba que todo está bien
Si la consulta se ejecuta correctamente, verás un mensaje como "1 fila afectada". Si te dice "0 filas afectadas", revisa que el correo electrónico sea correcto o que el prefijo de la tabla sea el correcto.
Método 3: Reset password PrestaShop usando el modo mantenimiento y un módulo (versiones 1.6 y 1.7)
PrestaShop, en versiones 1.6 y 1.7, incluye una función oculta que permite resetear la contraseña desde el propio front-office si activas el modo mantenimiento y usas un enlace especial. Sin embargo, este método es menos fiable que los anteriores y no siempre funciona en versiones más nuevas.
Paso 1: Activa el modo mantenimiento
- Accede a tu cPanel y abre el Administrador de archivos.
- Ve a la carpeta
public_html(o la raíz de tu tienda). - Busca el archivo
config/settings.inc.php(versiones 1.6) oapp/config/parameters.php(versiones 1.7). - Edita el archivo y busca una línea que contenga
PS_SHOP_ENABLE. Cambia el valor a0(cero) para desactivar la tienda, o a1para activarla. En este caso, queremos activar el modo mantenimiento, así que debe estar en0. - Guarda el archivo.
[INFO]
El modo mantenimiento muestra una página de "mantenimiento" a los clientes, pero tú podrás acceder al panel de administración normalmente.
Paso 2: Usa el enlace de recuperación
- Ve a
https://tudominio.com/admin/(o la URL de tu panel). - En la pantalla de inicio de sesión, haz clic en "¿Olvidó su contraseña?".
- Introduce tu correo electrónico.
- Recibirás un correo con un enlace para restablecer la contraseña. Sigue las instrucciones.
Este método es el más fácil si tu servidor de correo funciona correctamente y si tu PrestaShop tiene configurado el envío de emails.
Método 4: Cambiar la contraseña de administrador de PrestaShop mediante FTP (para casos extremos)
Si no tienes acceso a phpMyAdmin (por ejemplo, porque tu hosting lo bloquea), siempre puedes editar un archivo de configuración temporalmente para forzar un cambio de contraseña.
Paso 1: Crea un archivo PHP de restablecimiento
- Conecta a tu hosting por FTP (usando FileZilla, por ejemplo).
- Navega a la carpeta raíz de tu PrestaShop (normalmente
public_html). - Crea un archivo nuevo llamado
reset_admin.php. - Ábrelo con un editor de texto y pega esto:
<?php
define('_PS_ADMIN_DIR_', __DIR__);
require_once(__DIR__ . '/config/config.inc.php');
$email = 'tu_correo_admin@ejemplo.com';
$new_password = 'TuNuevaClaveSegura2024#';
$hash = password_hash($new_password, PASSWORD_BCRYPT);
$sql = 'UPDATE ' . _DB_PREFIX_ . 'employee SET passwd = "' . $hash . '" WHERE email = "' . $email . '"';
Db::getInstance()->execute($sql);
echo 'Contraseña actualizada. <a href="/admin">Ir al panel</a>';
?>
Paso 2: Ejecuta el archivo
- Abre tu navegador y ve a
https://tudominio.com/reset_admin.php. - Verás el mensaje de confirmación.
- Borra el archivo inmediatamente por FTP.
Consejos para crear una contraseña segura
Ya que estás en ello, aprovecha para poner una contraseña que no sea fácil de adivinar. Te recomiendo:
- Mínimo 12 caracteres.
- Combina mayúsculas, minúsculas, números y símbolos (ej:
#PrestaShop2024!). - No uses información personal (nombres, fechas de nacimiento, etc.).
- No reutilices la misma contraseña para otros servicios.
[TIP]
Usa un gestor de contraseñas como Bitwarden o 1Password para guardar todas tus claves de forma segura.
Preguntas frecuentes (FAQ)
¿Qué pasa si cambio la contraseña y no me deja entrar?
Revisa que has pegado el hash correctamente y que el email coincide exactamente con el de la base de datos. A veces hay espacios en blanco al copiar. Vuelve a generar el hash y repite el proceso.
¿Puedo cambiar la contraseña de un empleado que no sea el principal?
Sí, el método de phpMyAdmin funciona para cualquier fila de la tabla ps_employee. Solo tienes que editar la fila correspondiente al empleado que quieras.
¿Es seguro usar generadores online de hash bcrypt?
Sí, siempre que uses páginas de confianza. El hash se genera en tu navegador y no se envía a ningún servidor, así que es seguro.
¿Qué hago si no sé el prefijo de mis tablas?
Mira en el archivo config/settings.inc.php (versiones 1.6) o app/config/parameters.php (versiones 1.7). Busca la línea define('_DB_PREFIX_', 'ps_'); y ahí verás el prefijo.
¿Este método funciona para PrestaShop 8?
Sí, la estructura de la tabla ps_employee se mantiene, y el algoritmo de hash bcrypt es el mismo. Sin embargo, te recomiendo usar el Método 1 (phpMyAdmin) porque es el más directo.
Conclusión final
Recuerda que cambiar la contraseña de administrador de PrestaShop en cPanel es un proceso sencillo si sigues los pasos correctos. La clave está en actualizar el hash en la base de datos, y para eso phpMyAdmin es tu mejor aliado.
Si te has quedado con alguna duda, repite el proceso desde el principio y verifica cada paso. Y si tu hosting usa Syspanel en lugar de cPanel, no te preocupes: el acceso a la base de datos se hace de forma muy similar (busca la herramienta de bases de datos MySQL en el panel, que suele estar en el puerto 2106).
[WARNING]
No intentes cambiar la contraseña editando archivos de núcleo de PrestaShop (comoclasses/Employee.php) porque podrías romper la tienda. Los métodos que te he mostrado son los oficiales y seguros.
Ahora ya sabes cómo resolverlo. ¡Espero que este artículo te haya sido de ayuda y que hayas podido recuperar el acceso a tu tienda sin perder los nervios! Si te ha funcionado, compártelo con otros compañeros que estén pasando por lo mismo. 😉
