Cómo cambiar el prefijo de las tablas de WordPress en PrestaShop y WordPress
¿Por qué cambiar el prefijo de las tablas en WordPress y PrestaShop?
Cuando instalas WordPress o PrestaShop, el instalador crea por defecto tablas con un prefijo estándar, como wp_ en WordPress o ps_ en PrestaShop. Este prefijo es la primera parte del nombre de cada tabla en la base de datos, por ejemplo: wp_options, wp_posts, ps_product, etc.
El hecho de que el prefijo sea conocido por todo el mundo es un riesgo de seguridad importante. Un atacante que intente un ataque de inyección SQL o fuerza bruta ya sabe cómo se llaman tus tablas. Si cambias el prefijo, añades una capa extra de dificultad para cualquier intento de acceso no autorizado.
En este artículo te explicamos paso a paso cómo cambiar el prefijo de las tablas de WordPress y PrestaShop, tanto si tienes una instalación reciente como si ya llevas tiempo con tu web funcionando. No necesitas ser un experto en bases de datos, solo seguir las instrucciones con calma y hacer una copia de seguridad antes de empezar.
[WARNING]
Antes de tocar nada, haz una copia de seguridad completa de tu base de datos. Un error al cambiar prefijos puede dejar tu web inaccesible. Si no sabes hacer copias de seguridad, consulta con tu proveedor de hosting o usa la herramienta de backups de tu panel de control (por ejemplo, desde Syspanel, el panel de hosting que puedes encontrar en el puerto 2106).
¿Qué necesitas para empezar?
Para realizar todo el proceso necesitarás:
- Acceso a tu panel de control de hosting (cPanel, Syspanel, Plesk, etc.) o a una herramienta como phpMyAdmin.
- Un cliente FTP o el administrador de archivos de tu hosting.
- Un editor de texto simple (como el Bloc de notas, Notepad++ o similar).
- Paciencia y seguir los pasos en orden.
[INFO]
Si tu hosting usa Syspanel, recuerda que el panel de administración se accede a través del puerto 2106 (por ejemplo,https://tudominio.com:2106). Desde ahí puedes gestionar tus bases de datos y archivos fácilmente.
Cambiar el prefijo de las tablas en WordPress
WordPress es probablemente el CMS más popular, y también el más atacado. Cambiar el prefijo wp_ es una de las primeras recomendaciones de seguridad que deberías aplicar.
Paso 1: Accede a tu base de datos con phpMyAdmin
Ve al panel de control de tu hosting y busca el acceso a phpMyAdmin (o cualquier otra herramienta de gestión de bases de datos). Selecciona la base de datos de tu WordPress.
Verás una lista de tablas. Todas empiezan con wp_ (o el prefijo que hayas usado al instalar). Anota el prefijo actual.
Paso 2: Genera las consultas SQL para renombrar las tablas
Vamos a usar un truco sencillo: generar un script SQL que renombre todas las tablas automáticamente. No te preocupes, no necesitas escribir cada consulta a mano.
En la pestaña SQL de phpMyAdmin, pega el siguiente código (reemplaza wp_ por tu prefijo actual y nuevo_prefijo_ por el que quieras usar, por ejemplo miwp_):
SELECT CONCAT('RENAME TABLE ', table_name, ' TO ', REPLACE(table_name, 'wp_', 'nuevo_prefijo_'), ';')
FROM information_schema.tables
WHERE table_schema = 'tu_base_de_datos'
AND table_name LIKE 'wp_%';
Este comando no renombra nada todavía, solo te muestra las consultas que deberías ejecutar. Copia el resultado que te aparezca.
[TIP]
Elige un prefijo que sea difícil de adivinar, pero que tú puedas recordar. Por ejemplo, una combinación de letras y números comox7k9_. Evita usar prefijos comunes comomiwp_oblog_, que son igualmente predecibles.
Paso 3: Ejecuta las consultas de renombrado
Pega las consultas que copiaste en el paso anterior en la pestaña SQL y ejecútalas. Si todo ha ido bien, verás que todas las tablas ahora tienen el nuevo prefijo.
[WARNING]
No ejecutes el primer comando y el segundo a la vez. Primero genera la lista de consultas y luego ejecuta SOLO las consultas de renombrado. Si ejecutas el primer comando de nuevo, te devolverá las consultas ya renombradas y podría dar error.
Paso 4: Actualiza el archivo wp-config.php
Ahora toca decirle a WordPress que las tablas ya no se llaman wp_. Accede a la raíz de tu instalación y busca el archivo wp-config.php. Ábrelo con un editor de texto.
Busca la línea que contiene algo parecido a esto:
$table_prefix = 'wp_';
Cámbiala por tu nuevo prefijo:
$table_prefix = 'nuevo_prefijo_';
Guarda el archivo y súbelo de nuevo a tu servidor si lo estabas editando localmente.
Paso 5: Actualiza las opciones de la base de datos
Hay dos tablas que contienen referencias al prefijo en sus campos: options y usermeta. Con las consultas anteriores las has renombrado, pero sus contenidos siguen apuntando al prefijo antiguo.
Ejecuta las siguientes consultas SQL en phpMyAdmin (reemplaza los prefijos según corresponda):
UPDATE tu_nuevo_prefijo_options SET option_name = REPLACE(option_name, 'wp_', 'nuevo_prefijo_') WHERE option_name LIKE 'wp_%';
UPDATE tu_nuevo_prefijo_usermeta SET meta_key = REPLACE(meta_key, 'wp_', 'nuevo_prefijo_') WHERE meta_key LIKE 'wp_%';
[INFO]
Si usas plugins de caché o de seguridad, es posible que también guarden rutas con el prefijo. Si algo falla después de este cambio, revisa la configuración de estos plugins.
Paso 6: Comprueba que todo funciona
Entra en tu sitio web y navega por algunas páginas. Revisa el panel de administración (/wp-admin). Si todo carga correctamente, ¡enhorabuena! Has cambiado el prefijo de las tablas de WordPress correctamente.
Cambiar el prefijo de las tablas en PrestaShop
El proceso en PrestaShop es similar, pero con alguna particularidad. El prefijo por defecto suele ser ps_, aunque puede variar según la versión o el instalador.
Paso 1: Haz una copia de seguridad (¡sí, otra vez!)
No podemos enfatizar esto lo suficiente. Haz una copia de seguridad completa de tu base de datos antes de continuar. En PrestaShop, además, es recomendable desactivar la tienda mientras realizas los cambios para evitar que un cliente acceda a mitad de proceso.
Puedes poner la tienda en mantenimiento desde el panel de administración: Parámetros avanzados > Mantenimiento.
Paso 2: Renombra las tablas con phpMyAdmin
Al igual que en WordPress, vamos a generar las consultas de renombrado. En la pestaña SQL de tu base de datos, ejecuta:
SELECT CONCAT('RENAME TABLE ', table_name, ' TO ', REPLACE(table_name, 'ps_', 'nuevo_prefijo_'), ';')
FROM information_schema.tables
WHERE table_schema = 'tu_base_de_datos'
AND table_name LIKE 'ps_%';
Copia el resultado y ejecuta todas las consultas generadas.
Paso 3: Actualiza el archivo de configuración
PrestaShop guarda la configuración de la base de datos en el archivo app/config/parameters.php (en versiones recientes) o en config/settings.inc.php (en versiones antiguas).
Busca la línea que contiene 'database_prefix' o DB_PREFIX y cámbiala por tu nuevo prefijo.
Paso 4: Actualiza las tablas de configuración
Al igual que en WordPress, hay tablas que contienen referencias al prefijo antiguo en sus campos. En PrestaShop, las principales son:
ps_configuration(camponame)ps_shop_url(si tienes multitienda)
Ejecuta estas consultas (ajusta los prefijos):
UPDATE nuevo_prefijo_configuration SET name = REPLACE(name, 'ps_', 'nuevo_prefijo_') WHERE name LIKE 'ps_%';
UPDATE nuevo_prefijo_shop_url SET physical_uri = REPLACE(physical_uri, 'ps_', 'nuevo_prefijo_');
[WARNING]
No ejecutes la actualización deshop_urlsi no tienes multitienda activa. Podrías romper la URL de tu tienda. Si no estás seguro, omite esa consulta.
Paso 5: Limpia la caché de PrestaShop
PrestaShop guarda mucha información en caché. Después de los cambios, borra la carpeta var/cache (en versiones modernas) o cache (en versiones antiguas) a través de FTP o del administrador de archivos de tu hosting. También puedes hacerlo desde el panel de administración en Parámetros avanzados > Rendimiento > Vaciar la caché.
Paso 6: Verifica tu tienda
Revisa que la tienda carga correctamente, que los productos se ven bien y que el panel de administración funciona. Si algo falla, restaura la copia de seguridad y revisa los pasos.
¿Qué pasa si tienes WordPress y PrestaShop en la misma base de datos?
Es posible que tengas ambos CMS en la misma base de datos (aunque no es recomendable). En ese caso, asegúrate de que los prefijos sean completamente diferentes. Por ejemplo, si WordPress usa wp_, PrestaShop podría usar ps_ sin conflicto. Si ambos usan el mismo prefijo, los renombrados podrían mezclarse.
[TIP]
Si tienes ambos CMS en la misma base de datos, lo más limpio es separarlos en bases de datos diferentes. Consulta con tu hosting cómo crear una nueva base de datos y migrar.
Preguntas frecuentes sobre el cambio de prefijo
¿Es realmente necesario cambiar el prefijo?
No es obligatorio, pero es una medida de seguridad recomendada. Reduce el riesgo de ataques automatizados que buscan tablas con prefijos conocidos.
¿Cuánto tiempo se tarda en hacer el cambio?
Si sigues los pasos con calma, entre 30 minutos y 1 hora. La mayor parte del tiempo se va en hacer la copia de seguridad y verificar que todo funciona.
¿Puedo cambiar el prefijo con un plugin?
Sí, existen plugins como Change Table Prefix para WordPress que automatizan el proceso. Sin embargo, hacerlo manualmente te da más control y no dependes de un plugin que pueda quedar desactualizado.
¿Qué pasa si me olvido de actualizar alguna referencia?
Lo más común es que la web deje de funcionar o que algunas funciones den error. Si te pasa, revisa los pasos anteriores y asegúrate de haber actualizado tanto el archivo de configuración como las tablas options/usermeta (en WordPress) o configuration (en PrestaShop).
¿Afecta al SEO cambiar el prefijo de las tablas?
No, el prefijo de las tablas no tiene ninguna relación con el SEO. Tus URLs, contenido y enlaces no cambian. Es una operación interna de la base de datos.
Conclusión
Cambiar el prefijo de las tablas de WordPress y PrestaShop es una tarea sencilla si sigues los pasos correctos. La clave está en hacer una buena copia de seguridad, ejecutar las consultas SQL con cuidado y actualizar los archivos de configuración. Con este cambio, tu base de datos será más segura y estarás un paso más cerca de tener una web más protegida.
Recuerda que si tu hosting usa Syspanel, puedes acceder a todas las herramientas necesarias (phpMyAdmin, administrador de archivos, copias de seguridad) a través del puerto 2106. Y si en algún momento te sientes perdido, no dudes en contactar con el soporte técnico de tu hosting: para eso estamos.
[INFO]
La seguridad de tu web es un proceso continuo. Cambiar el prefijo de las tablas es solo una de las muchas medidas que puedes tomar. Mantén tu CMS actualizado, usa contraseñas fuertes y realiza copias de seguridad periódicas. Tu yo del futuro te lo agradecerá.
