Cómo cambiar el prefijo de las tablas de WordPress para mejorar la seguridad (cPanel, Plesk)
¿Por qué cambiar el prefijo de las tablas de WordPress?
Cuando instalas WordPress, el sistema crea una serie de tablas en tu base de datos MySQL para almacenar entradas, comentarios, usuarios, opciones y más. Por defecto, todas estas tablas usan el prefijo wp_. Esto significa que tendrás tablas llamadas wp_posts, wp_options, wp_users, etc.
El problema es que wp_ es el prefijo más conocido y utilizado en todo el mundo. Cualquier atacante que intente acceder a tu base de datos mediante inyección SQL (una técnica para manipular consultas) ya sabe que, muy probablemente, tu tabla de usuarios se llama wp_users. Esto facilita enormemente sus ataques, ya que pueden intentar consultas específicas sin tener que adivinar el nombre de las tablas.
Cambiar el prefijo de las tablas de WordPress a algo personalizado y menos predecible, como mipagina_ o x9k2_, añade una capa extra de seguridad por oscuridad. No es una solución mágica, pero dificulta el trabajo automatizado de bots y scripts maliciosos que buscan vulnerabilidades comunes en sitios con el prefijo estándar.
En este artículo, te explicaremos paso a paso cómo cambiar el prefijo de las tablas de WordPress, tanto si tu hosting usa cPanel como si usa Plesk. También cubriremos la parte más delicada: modificar el archivo wp-config.php y actualizar las opciones internas de WordPress para que todo siga funcionando correctamente.
[INFO] Este proceso es seguro si sigues las instrucciones al pie de la letra. Sin embargo, antes de empezar, es obligatorio que realices una copia de seguridad completa de tu base de datos. Un error puede dejar tu sitio web inaccesible temporalmente.
Antes de empezar: preparativos y copia de seguridad
La seguridad ante todo. Antes de tocar nada, necesitas tener una copia de seguridad reciente de tu base de datos. Si algo sale mal, podrás restaurarla y volver al estado original.
Cómo hacer una copia de seguridad en cPanel
- Accede a tu panel de control de cPanel (normalmente en
tudominio.com/cpanel). - Busca la sección Archivos y haz clic en Administrador de copias de seguridad.
- Dentro, busca la opción Descargar una copia de seguridad de la base de datos MySQL.
- Verás una lista de tus bases de datos. Haz clic en el nombre de la base de datos de tu WordPress (suele ser algo como
usuario_wpdb). - Se descargará un archivo
.sql.gzo.sql. Guárdalo en un lugar seguro.
Cómo hacer una copia de seguridad en Plesk
- Accede a tu panel de Plesk (normalmente en
tudominio.com:8443). - Ve a la sección Sitios web y dominios.
- Busca tu dominio y haz clic en Copias de seguridad.
- Haz clic en Crear copia de seguridad.
- Asegúrate de marcar la opción para incluir las bases de datos.
- Puedes elegir guardarla en el servidor o descargarla a tu ordenador. Te recomendamos descargarla.
[WARNING] No omitas este paso. Tener una copia de seguridad es tu red de seguridad. Si te equivocas en un paso, podrás restaurar todo sin perder información.
Método 1: Cambiar el prefijo con un plugin (la opción fácil)
Si no te sientes cómodo editando código o usando herramientas de bases de datos, la forma más sencilla es utilizar un plugin. Existen varios, pero uno de los más populares y fiables es UpdraftPlus (aunque su función principal es hacer copias de seguridad, tiene una herramienta específica para esto). Otro muy usado es Brozzme DB Prefix Change.
Ventajas:
- No necesitas tocar código manualmente.
- El plugin se encarga de actualizar todas las referencias y opciones internas.
- Es mucho más seguro para principiantes.
Desventajas:
- Añade un plugin más a tu instalación.
- Algunos plugins gratuitos pueden no estar actualizados.
Pasos con un plugin (ejemplo con Brozzme DB Prefix Change)
- Ve a tu escritorio de WordPress → Plugins → Añadir nuevo.
- Busca "Brozzme DB Prefix Change".
- Instálalo y actívalo.
- Una vez activado, ve a Herramientas → DB Prefix Change.
- El plugin te mostrará tu prefijo actual (normalmente
wp_). - En el campo New prefix, escribe el nuevo prefijo que desees. Por ejemplo:
miweb_oseguro_2024_. - Haz clic en Change prefix.
- El plugin hará todo el trabajo: cambiará el nombre de todas las tablas, actualizará el archivo
wp-config.phpy modificará las opciones internas de WordPress. - Al finalizar, deberías cerrar sesión y volver a iniciarla para asegurarte de que todo funciona.
[TIP] Elige un prefijo que sea fácil de recordar para ti, pero difícil de adivinar para otros. Evita nombres comunes como
blog_,web_osys_. Una combinación de letras y números es ideal.
Método 2: Cambiar el prefijo manualmente (más control, requiere cuidado)
Este método te da un control total sobre el proceso. Lo haremos en tres fases: cambiar el nombre de las tablas, modificar el wp-config.php y actualizar las opciones internas.
Fase 1: Cambiar el nombre de las tablas en la base de datos
Necesitarás acceder a la herramienta de gestión de bases de datos de tu hosting.
Para cPanel (usando phpMyAdmin)
- Accede a cPanel y busca la sección Bases de datos.
- Haz clic en phpMyAdmin.
- En el panel izquierdo, selecciona tu base de datos de WordPress.
- Verás todas las tablas listadas. Necesitas seleccionarlas todas. Puedes hacer clic en la primera, mantener pulsada la tecla
Shifty hacer clic en la última. - Una vez seleccionadas, en el menú desplegable que dice Con seleccionar:, elige Generar SQL (o "Create PHP Code"). Esto generará una consulta SQL que puedes editar.
- En el cuadro de texto que aparece, verás una serie de líneas que comienzan con
ALTER TABLE wp_tabla RENAME TO .... No ejecutes esto todavía. - Ahora viene la parte tediosa. Debes reemplazar todas las ocurrencias de
wp_por tu nuevo prefijo. Puedes usar la función de buscar y reemplazar de tu navegador (Ctrl+H o Cmd+H) dentro del cuadro de texto. - Sustituye todos los
wp_por, por ejemplo,nuevoprefijo_. Asegúrate de que el reemplazo sea exacto. - Una vez hecho, haz clic en el botón Continuar o Ejecutar en la parte inferior.
- phpMyAdmin ejecutará todas las consultas
ALTER TABLEy renombrará las tablas.
[WARNING] Este paso es delicado. Asegúrate de que el reemplazo se haga correctamente. Si solo reemplazas algunas, tu sitio se romperá. La opción de "Generar SQL" es la más segura porque te permite revisar el código antes de ejecutarlo.
Para Plesk (usando phpMyAdmin)
El proceso en Plesk es prácticamente idéntico al de cPanel:
- Accede a Plesk y ve a Sitios web y dominios.
- Busca el icono de phpMyAdmin dentro de la sección de tu base de datos (suele estar en la parte de "Bases de datos").
- Una vez dentro, sigue los mismos pasos 3 a 10 del apartado anterior.
Fase 2: Modificar el archivo wp-config.php
Este archivo es el corazón de la configuración de WordPress. Se encuentra en la raíz de tu instalación. Debes editarlo para cambiar el prefijo que WordPress usará para conectarse a las tablas.
- Accede a tu hosting mediante Administrador de archivos (en cPanel) o Administrador de archivos (en Plesk). También puedes usar un cliente FTP como FileZilla.
- Navega hasta la carpeta donde está instalado WordPress (normalmente
public_htmlohttpdocs). - Busca el archivo
wp-config.php. Haz clic derecho y selecciona Editar (o descárgalo, edítalo localmente y súbelo de nuevo). - Busca la línea que dice:
$table_prefix = 'wp_'; - Cambia el valor
'wp_'por tu nuevo prefijo. Debe coincidir exactamente con el que usaste en la base de datos.$table_prefix = 'nuevoprefijo_'; - Guarda el archivo y súbelo de vuelta si lo habías descargado.
[INFO] El archivo
wp-config.phpes un archivo crítico. Asegúrate de no borrar ninguna otra línea mientras lo editas.
Fase 3: Actualizar las opciones internas de WordPress
Este es el paso que la mayoría de las guías olvidan. WordPress guarda las URLs de sus opciones en las tablas options y usermeta. Si no las actualizas, algunas partes de tu sitio (como el menú de administración) podrían dejar de funcionar.
Opción A: Usando phpMyAdmin (más directo)
-
Vuelve a phpMyAdmin y selecciona tu base de datos.
-
Ahora, busca la tabla
nuevoprefijo_options(anteswp_options). -
Haz clic en la pestaña SQL.
-
Ejecuta la siguiente consulta SQL, reemplazando
nuevoprefijo_por tu prefijo real:UPDATE nuevoprefijo_options SET option_name = REPLACE(option_name, 'wp_', 'nuevoprefijo_') WHERE option_name LIKE 'wp_%';Explicación: Esta consulta busca cualquier opción que empiece por
wp_y la renombra con tu nuevo prefijo. Esto es necesario porque algunas opciones internas (comowp_user_roles) contienen el prefijo en su nombre. -
Ahora, haz lo mismo con la tabla
nuevoprefijo_usermeta(anteswp_usermeta):UPDATE nuevoprefijo_usermeta SET meta_key = REPLACE(meta_key, 'wp_', 'nuevoprefijo_') WHERE meta_key LIKE 'wp_%';Explicación: Esta consulta actualiza las claves de metadatos de los usuarios (como
wp_capabilities).
[TIP] Si no te sientes cómodo ejecutando SQL, puedes usar la opción de Buscar y Reemplazar en phpMyAdmin (pestaña "Buscar"). Busca
wp_y reemplázalo pornuevoprefijo_en las tablasoptionsyusermeta. Asegúrate de seleccionar la tabla correcta y la columna correcta (option_nameymeta_key).
Opción B: Usando un plugin (más fácil)
Después de cambiar el prefijo de las tablas, puedes instalar un plugin como Better Search Replace. Este plugin te permite hacer un reemplazo seguro en toda la base de datos.
- Instala y activa el plugin.
- Ve a Herramientas → Better Search Replace.
- En el campo Search for, escribe
wp_. - En el campo Replace with, escribe tu nuevo prefijo.
- Selecciona la tabla
nuevoprefijo_optionsynuevoprefijo_usermeta(puedes seleccionarlas todas, pero esto es más lento). - Marca la opción Dry run para hacer una prueba. Esto te mostrará cuántos cambios hará sin aplicarlos.
- Si todo se ve bien, desmarca Dry run y haz clic en Run.
- Una vez terminado, desinstala el plugin.
[WARNING] No olvides borrar el plugin después de usarlo, ya que no lo necesitas para el funcionamiento diario y podría ser un punto de entrada para atacantes si no se actualiza.
Verificación final y solución de problemas
Después de completar todos los pasos, es hora de verificar que todo funciona.
- Visita tu sitio web. Debería cargar con normalidad en el front-end.
- Accede al escritorio de WordPress (
tudominio.com/wp-admin). Deberías poder iniciar sesión sin problemas. - Revisa algunas páginas internas como "Ajustes" o "Usuarios" para asegurarte de que no hay errores.
Problemas comunes
- "Error al conectar con la base de datos": Esto significa que el prefijo en
wp-config.phpno coincide con el nombre real de las tablas. Revisa ambos. - No puedo iniciar sesión: Puede ser que las opciones de la tabla
usermetano se hayan actualizado correctamente. Repite la Fase 3. - El menú de administración se ve raro: Esto suele pasar si la consulta SQL de la tabla
optionsno se ejecutó bien. Revisa que no haya quedado ninguna opción con el prefijo antiguo.
Consejos adicionales de seguridad para WordPress
Cambiar el prefijo es un buen paso, pero no es el único. Aquí tienes otras medidas para mejorar la seguridad de tu WordPress:
- Mantén todo actualizado: WordPress, plugins y temas. Las actualizaciones corrigen vulnerabilidades conocidas.
- Usa contraseñas fuertes: Tanto para tu panel de administración como para tu base de datos MySQL.
- Instala un plugin de seguridad: Wordfence o Sucuri pueden ayudarte a bloquear ataques y monitorizar tu sitio.
- Cambia el nombre de usuario "admin": No uses "admin" como nombre de usuario, ya que es el primer intento de cualquier atacante.
- Activa la autenticación de dos factores (2FA): Añade una capa extra de protección al iniciar sesión.
Preguntas frecuentes (FAQ)
¿Puedo cambiar el prefijo de las tablas de WordPress sin acceso a phpMyAdmin?
Sí, puedes usar un plugin como "Brozzme DB Prefix Change" desde el propio panel de administración de WordPress. Es la opción más recomendada si no tienes experiencia técnica.
¿Qué pasa si mi hosting usa HestiaCP (ahora llamado Syspanel)?
Si tu hosting usa Syspanel (anteriormente HestiaCP), el acceso a la base de datos se realiza de forma similar. Accede a tu panel de Syspanel en el puerto 2106 (por ejemplo, tudominio.com:2106). Dentro, busca la sección de bases de datos y encontrarás el acceso a phpMyAdmin. El proceso para cambiar el prefijo es idéntico al descrito para cPanel y Plesk.
¿Es necesario cambiar el prefijo si mi hosting es muy seguro?
No es estrictamente necesario, pero es una buena práctica de "defensa en profundidad". Cuantas más capas de seguridad tengas, más difícil será para un atacante comprometer tu sitio.
¿Puedo cambiar el prefijo a wp_ de nuevo si me arrepiento?
Sí, puedes revertir el proceso siguiendo los mismos pasos, pero reemplazando tu prefijo personalizado por wp_. Es un poco más de trabajo, pero es posible.
¿Cambiar el prefijo afecta a mi SEO?
No, cambiar el prefijo de las tablas de la base de datos no tiene ningún impacto en tu posicionamiento en buscadores. Tu contenido y tus URLs no cambian.
¿Qué hago si después del cambio mi sitio da error 500?
Un error 500 suele estar relacionado con un problema en el archivo .htaccess o en la configuración del servidor. Si ocurre justo después de cambiar el prefijo, revisa que el archivo wp-config.php esté correctamente guardado y que no hayas borrado ninguna línea. También puedes restaurar la copia de seguridad que hiciste al principio.
En resumen, cambiar el pref
