Cómo cambiar el prefijo de las tablas en WordPress para mejorar la seguridad
¿Por qué cambiar el prefijo de las tablas en WordPress?
WordPress es el gestor de contenidos más usado del mundo, lo que lo convierte en un objetivo constante para ataques automatizados. Uno de los vectores de ataque más comunes es la inyección SQL, donde los atacantes intentan manipular tu base de datos mediante consultas maliciosas.
La mayoría de instalaciones de WordPress utilizan el prefijo predeterminado wp_. Esto significa que tus tablas se llaman wp_posts, wp_options, wp_users, etc. Un atacante que conoce este prefijo ya tiene la mitad del trabajo hecho: sabe exactamente qué nombres de tablas buscar para intentar extraer información o inyectar código.
Al cambiar el prefijo a algo único y aleatorio, como x7k9m_, dificultas enormemente estos ataques automatizados. No es una solución mágica, pero sí una capa extra de seguridad que, combinada con otras medidas, hace tu sitio mucho más difícil de comprometer.
En esta guía te explicaré paso a paso cómo hacer este cambio de forma segura, tanto si tienes acceso a herramientas como phpMyAdmin como si prefieres usar un plugin. No necesitas ser un experto en bases de datos; solo seguir las instrucciones con calma.
[INFO] Este proceso es seguro si se sigue correctamente, pero siempre recomiendo hacer una copia de seguridad completa antes de empezar. Si algo sale mal, podrás restaurar tu sitio sin pérdidas.
Preparación: copia de seguridad y herramientas necesarias
Antes de tocar nada, necesitas tener dos cosas claras: una copia de seguridad y las credenciales de acceso a tu base de datos.
Copia de seguridad completa
La copia de seguridad debe incluir dos partes:
- Los archivos de WordPress (todo el contenido de tu carpeta pública, normalmente
public_htmlowww). - La base de datos (todas las tablas con sus datos).
Puedes hacerla desde el panel de control de tu hosting o usando plugins como UpdraftPlus. Si tu hosting usa cPanel, busca la opción "Copias de seguridad" o "Backup". También puedes usar la herramienta de exportación de phpMyAdmin.
[WARNING] No subestimes este paso. He visto sitios perdidos por no hacer una copia antes de modificar la base de datos. Diez minutos de prevención valen oro.
Herramientas necesarias
Para este tutorial necesitarás:
- Acceso a phpMyAdmin (o similar) desde tu panel de hosting.
- Un editor de texto plano (como el Bloc de notas o Visual Studio Code) para modificar el archivo
wp-config.php. - Acceso FTP o al administrador de archivos de tu hosting para editar archivos.
Si tu hosting usa Syspanel (anteriormente conocido como HestiaCP), recuerda que el acceso al panel se realiza a través del puerto 2106. Por ejemplo: https://tudominio.com:2106. Desde ahí podrás acceder a la base de datos y al administrador de archivos.
Método 1: Cambiar el prefijo manualmente con phpMyAdmin
Este es el método más completo y no requiere instalar plugins adicionales. Eso sí, requiere más atención a los detalles.
Paso 1: Accede a phpMyAdmin
Entra en tu panel de hosting (cPanel, Syspanel, etc.) y busca el icono de phpMyAdmin. Si usas Syspanel, ve a la sección de "Bases de datos" y encontrarás el enlace directo.
Una vez dentro, selecciona la base de datos de tu WordPress en el menú lateral izquierdo. Verás una lista con todas las tablas, que normalmente empiezan por wp_.
Paso 2: Renombrar todas las tablas
Aquí viene la parte más tediosa: renombrar cada tabla. Puedes hacerlo una a una, pero existe un truco mucho más rápido usando SQL.
En la pestaña SQL (arriba del todo), pega el siguiente código:
RENAME TABLE wp_commentmeta TO x7k9m_commentmeta;
RENAME TABLE wp_comments TO x7k9m_comments;
RENAME TABLE wp_links TO x7k9m_links;
RENAME TABLE wp_options TO x7k9m_options;
RENAME TABLE wp_postmeta TO x7k9m_postmeta;
RENAME TABLE wp_posts TO x7k9m_posts;
RENAME TABLE wp_terms TO x7k9m_terms;
RENAME TABLE wp_termmeta TO x7k9m_termmeta;
RENAME TABLE wp_term_relationships TO x7k9m_term_relationships;
RENAME TABLE wp_term_taxonomy TO x7k9m_term_taxonomy;
RENAME TABLE wp_usermeta TO x7k9m_usermeta;
RENAME TABLE wp_users TO x7k9m_users;
[TIP] Sustituye
x7k9m_por el prefijo que quieras usar. Lo ideal es que sea algo aleatorio, con letras y números, que no tenga relación con tu dominio o marca.
Si tu instalación tiene tablas adicionales (por ejemplo, de plugins como WooCommerce), tendrás que añadirlas a la lista. Puedes ver todas las tablas en el menú izquierdo y añadir las que falten.
Paso 3: Actualizar las opciones de WordPress
Ahora necesitas decirle a WordPress que el prefijo ha cambiado. Ejecuta estas consultas SQL en la misma pestaña:
UPDATE x7k9m_options SET option_name = 'x7k9m_user_roles' WHERE option_name = 'wp_user_roles';
Esta consulta cambia el nombre de la opción que guarda los roles de usuario. Si no la actualizas, podrías tener problemas con los permisos.
Paso 4: Actualizar los meta datos de los usuarios
Si tienes usuarios registrados, es posible que algunos meta datos hagan referencia al prefijo antiguo. Ejecuta:
UPDATE x7k9m_usermeta SET meta_key = REPLACE(meta_key, 'wp_', 'x7k9m_') WHERE meta_key LIKE 'wp_%';
Esto reemplaza cualquier wp_ en los meta datos de usuario por tu nuevo prefijo.
Paso 5: Modificar el archivo wp-config.php
Ahora ve al administrador de archivos de tu hosting o usa FTP para localizar el archivo wp-config.php en la raíz de tu instalación de WordPress.
Ábrelo con un editor de texto y busca esta línea:
$table_prefix = 'wp_';
Cámbiala por:
$table_prefix = 'x7k9m_';
Guarda el archivo y súbelo de nuevo si lo estabas editando localmente.
Paso 6: Verifica que todo funciona
Entra en tu sitio web y comprueba que carga correctamente. Prueba a acceder al panel de administración (/wp-admin) y navega por algunas páginas. Si todo funciona, ¡enhorabuena! Has cambiado el prefijo manualmente.
[WARNING] Si ves un error de "conexión a la base de datos" o "tabla no existe", revisa que has escrito bien el prefijo tanto en
wp-config.phpcomo en las consultas SQL. También verifica que has renombrado todas las tablas.
Método 2: Usar un plugin para cambiar el prefijo
Si el método manual te da miedo o prefieres algo más automatizado, existen plugins que hacen el trabajo por ti. El más popular es Brozzme DB Prefix o Change Table Prefix.
Paso 1: Instala el plugin
Ve a tu panel de administración de WordPress → Plugins → Añadir nuevo. Busca "change table prefix" e instala uno con buena valoración. Yo recomiendo Change Table Prefix (por Oliver Schlöbe).
Paso 2: Configura el plugin
Una vez activado, ve a Herramientas → Change Table Prefix. Verás un formulario donde puedes introducir el nuevo prefijo.
El plugin se encargará de:
- Renombrar todas las tablas.
- Actualizar las opciones en la base de datos.
- Modificar el archivo
wp-config.php.
Solo tienes que hacer clic en "Change Prefix" y esperar a que termine.
Paso 3: Comprueba el resultado
Después de que el plugin termine, deberías ver un mensaje de éxito. Entra en tu sitio y verifica que todo funciona. También puedes ir a phpMyAdmin y comprobar que las tablas tienen el nuevo prefijo.
[TIP] Después de usar el plugin, puedes desinstalarlo si quieres. El cambio de prefijo es permanente y no necesitas el plugin para mantenerlo.
Qué hacer después de cambiar el prefijo
El trabajo no termina con el cambio. Hay algunas cosas que debes revisar para asegurarte de que todo sigue funcionando correctamente.
Actualizar cachés y CDN
Si usas algún plugin de caché (como W3 Total Cache o WP Rocket), es recomendable vaciarla. También si usas un CDN (como Cloudflare), purga la caché para que los visitantes vean la versión actualizada.
Revisar plugins y temas
Algunos plugins o temas guardan el prefijo en sus opciones. Si notas que algo no funciona después del cambio, revisa la configuración de los plugins más importantes (especialmente los de seguridad o caché).
Considerar otras medidas de seguridad
Cambiar el prefijo es solo una capa. Para una seguridad completa, considera:
- Cambiar el nombre de usuario administrador (nunca usar "admin").
- Usar contraseñas fuertes y un gestor de contraseñas.
- Limitar los intentos de inicio de sesión con un plugin como Limit Login Attempts.
- Instalar un plugin de seguridad como Wordfence o Sucuri.
- Mantener todo actualizado: WordPress, plugins y temas.
Preguntas frecuentes (FAQ)
¿Puedo cambiar el prefijo de WordPress sin phpMyAdmin?
Sí, puedes usar un plugin como los mencionados. También puedes hacerlo desde la línea de comandos si tienes acceso SSH, pero eso ya es más avanzado.
¿El cambio de prefijo afecta al rendimiento?
No, el rendimiento no se ve afectado. Es simplemente un cambio de nombre en las tablas de la base de datos.
¿Puedo cambiar el prefijo de nuevo en el futuro?
Sí, pero no es recomendable hacerlo a menudo. Cada cambio implica renombrar tablas y actualizar referencias. Hazlo una vez y no vuelvas a tocarlo.
¿Qué pasa si ya tengo un plugin que usa el prefijo wp_?
La mayoría de plugins usan la constante $table_prefix definida en wp-config.php, por lo que se adaptan automáticamente. Solo algunos plugins muy antiguos o mal programados podrían tener problemas.
¿Es necesario cambiar el prefijo si mi sitio es pequeño?
No es obligatorio, pero es una buena práctica. Los ataques automatizados no distinguen entre sitios grandes y pequeños; simplemente escanean millones de sitios buscando vulnerabilidades conocidas.
¿Puedo usar cualquier prefijo?
Sí, pero evita prefijos demasiado cortos o predecibles. Algo como ab12_ o x9k2_ es mucho mejor que mipagina_.
¿Qué hago si algo sale mal?
Si tienes la copia de seguridad que hicimos al principio, puedes restaurarla. En la mayoría de los casos, el problema suele ser un error al escribir el prefijo en wp-config.php o haber olvidado renombrar alguna tabla.
Conclusión
Cambiar el prefijo de las tablas en WordPress es una medida de seguridad sencilla pero efectiva. No te protegerá de todo, pero sí dificultará enormemente los ataques automatizados que buscan explotar el prefijo predeterminado wp_.
Tanto si eliges el método manual con phpMyAdmin como si prefieres usar un plugin, lo importante es hacerlo con calma y siguiendo los pasos. Recuerda siempre tener una copia de seguridad actualizada y verificar que todo funciona después del cambio.
Si tu hosting usa Syspanel, recuerda acceder por el puerto 2106 para gestionar tu base de datos y archivos. Y si tienes cualquier duda, no dudes en consultar la documentación de tu hosting o preguntar a su soporte técnico.
¡Ahora ya sabes cómo mejorar la seguridad de tu WordPress con un simple cambio de prefijo!
