• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Core / Cambiar el prefijo de las tablas de WordPress

Cambiar el prefijo de las tablas de WordPress

[ 19 febrero 2019 ] [ Autor: Jhon Marreros Guzmán ][ Core - Avanzado] [ ]

seguridad

Suscríbete a DecodeCMS:  

WordPress tiene algunas opciones que puedes considerar para mejorar la seguridad de tu sitio, una de estas opciones es el cambio de prefijo de las tablas de la base de datos, si bien no es una solución infalible para el ataque de inyección SQL, dificultará la acción de un atacante.

 

1- Generalidades

El nombre de las tablas de WordPress por seguridad tienen un prefijo que deberías cambiar, este prefijo por defecto es wp_ , tal como se muestra en el siguiente diagrama:

Tablas de WordPress con prefijo en diagrama ER

Además de la seguridad, gracias a los prefijos de las tablas es posible que puedas tener más de una instalación de WordPress compartiendo la misma Base de Datos.

 

2- ¿Qué prefijo usar?

Es importante tener en cuenta que debido a que estas cambiando el nombre de las tablas, sólo deberías usar caracteres alfanuméricos aleatorios y guion bajo, por ejemplo: a7x3yl_

Te puede interesar también identificar las tablas de wordpress aún con wp_ delante por lo que tu prefijo podria ser: wp_a7x3yl_

 

3- Cambiando el prefijo al instalar WordPress

Al momento de instalar WordPress tienes la opción de elegir el prefijo que tendrán las tablas de la base de datos, verás que por defecto el prefijo es wp_, tal como se muestra en la siguiente imagen, puedes cambiar el prefijo y continuar con la instalación.

Instalación de WordPress cambiar prefijo

 

4- Cambiando el prefijo en una instalación ya realizada

 

4.1- Realiza una copia de seguridad

Esto es lo primero que tienes que hacer antes de hacer este tipo de cambios, en caso algo vaya mal puedes recuperar la copia que has realizado.

 

4.2- Cambia el archivo wp-config.php

Ubica el archivo wp-config.php en la raíz de tu sitio, luego ubica la variable table_prefix y cámbiala

$table_prefix  = 'wp_a7x3yl_';

 

4.3- Renombrar las tablas de WordPress

Navega hasta las base de datos de tu sitio web, usualmente usarás la aplicación PHPMyAdmin para esto, ubica la Base de Datos y luego en el tab de SQL agrega lo siguiente:


RENAME table `wp_commentmeta` TO `wp_a7x3yl_commentmeta`;
RENAME table `wp_comments` TO `wp_a7x3yl_comments`;
RENAME table `wp_links` TO `wp_a7x3yl_links`;
RENAME table `wp_options` TO `wp_a7x3yl_options`;
RENAME table `wp_postmeta` TO `wp_a7x3yl_postmeta`;
RENAME table `wp_posts` TO `wp_a7x3yl_posts`;
RENAME table `wp_terms` TO `wp_a7x3yl_terms`;
RENAME table `wp_termmeta` TO `wp_a7x3yl_termmeta`;
RENAME table `wp_term_relationships` TO `wp_a7x3yl_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_a7x3yl_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_a7x3yl_usermeta`;
RENAME table `wp_users` TO `wp_a7x3yl_users`;

Estas son las tablas por defecto, si tienes plugins instalados que te han creado tablas adicionales tienes que igualmente cambiar el prefijo de esas tablas.
Tienes que usar el mismo prefijo que agregaste en el archivo wp-config.php en el ejemplo : wp_a7x3yl_

 

4.4- Renombrar campos en la tabla options

Usando igualmente PHPMyAdmin, en el tab de SQL puede hacer una consulta a la tabla de opciones de WordPress filtrando los campos que tengan el prefijo. La consulta SQL sería:

SELECT * FROM `wp_a7x3yl_options` WHERE `option_name` LIKE 'wp_%'

Esto te devolverá algunos resultados con el prefijo anterior y los cuales puedes cambiar manualmente por el nuevo prefijo.

En esta tabla como mínimo deberías encontrar el valor:
wp_user_roles

El cual tienes que cambiar por:
wp_a7x3yl_user_roles

Si hay otros valores que empiezan con wp_ posiblemente correspondan a un plugin que has instalado, si no los cambias posiblemente tengas que volver a realizar alguna configuración del plugin nuevamente ya que no encontrará la configuración almacenada.

 

4.5- Renombrar campos en la tabla de usermeta

Haremos lo mismo para la tabla metadatos de usuario, la consulta a usar será:

SELECT * FROM `wp_a7x3yl_usermeta` WHERE `meta_key` LIKE 'wp_%'

Esto nos devolverá algunos registros los cuales cambiarás manualmente.

En esta tabla como mínimo deberías encontrar los valores:
wp_capabilities
wp_user_level
wp_user-settings

Los cuales puedes cambiar por:

wp_a7x3yl_capabilities
wp_a7x3yl_user_level
wp_a7x3yl_user-settings

Igualmente, si hay otros valores que empiezan con wp_ posiblemente correspondan a un plugin que has instalado.

 

5- Conclusión

Tal como has podido ver, realizar el cambio de prefijo te da una seguridad extra en tu base de datos, la mayoría de los cambios puedes hacerlo directamente usando SQL a través de PHPMyAdmin.
 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Mostrar contenido solo a usuarios que compraron un producto en WooCommerceMostrar contenido solo a usuarios que compraron un producto en WooCommerce
  • Optimizar la carga de Javascript en WordPress con Async y DeferOptimizar la carga de Javascript en WordPress con Async y Defer
  • Agregar Iconos Font Awesome en el menú de WordPressAgregar Iconos Font Awesome en el menú de WordPress
  • Deshabilitar métodos de pago en WooCommerce según el total de pedidoDeshabilitar métodos de pago en WooCommerce según el total de pedido
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (2 votos, promedio: 3,00 de 5)
Cargando...

Interacciones con los lectores

Comentarios

  1. caro

    14 junio, 2020

    Muy bueno el tutorial. Muchas gracias

    • Jhon Marreros Guzmán

      14 junio, 2020

      Gracias Caro!. Saludos.

  2. Manuel

    18 junio, 2020

    Gracias por la guia, me fue como un tiro

    • Jhon Marreros Guzmán

      19 junio, 2020

      Que bueno que te sirvió 🙂

  3. Willy

    14 julio, 2020

    Excelente articulo y muy util.!!!

    • Jhon Marreros Guzmán

      14 julio, 2020

      Gracias Willy. Saludos.

  4. Jose

    21 agosto, 2020

    Gracias por el aporte! Todo salio perfecto!

    • Jhon Marreros Guzmán

      21 agosto, 2020

      🙂 que bueno. Saludos.

  5. Fredd Hannay

    16 febrero, 2021

    También si tienes muchas tablas (como en mi caso) y todas comienzan con wp_ puedes correr esta consulta que te devolverá todos las líneas a ejecutar para cambiar de nombres a todas las tablas.

    
    # ALTERAR LOS NOMBRES DE MUCHAS TABLAS
    SELECT
     CONCAT("RENAME TABLE ", TABLE_NAME, " TO wp_nuevo-prefijo_", SUBSTRING(TABLE_NAME, 4), ";")
    FROM 
     information_schema.tables
    WHERE
     table_type = 'BASE TABLE'
     AND table_schema = 'nombre de tu base';
    
    

    Gran post, fue de mucha ayuda, muchas gracias.
    Saludos!

    • Jhon Marreros Guzmán

      16 febrero, 2021

      Hola, gracias por el aporte. Saludos.

  6. juan

    20 abril, 2021

    Lo puse en práctica y me salió muy bien! Lo recomiendo
    Muchas gracias!

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Omnisend
Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad SEO social woocommerce

Populares

Deshabilitar el editor de bloques para Widgets en WordPress

Tablas Responsive en WordPress sin plugins

Agregar breadcrumbs de Yoast SEO a tu tema

Búsqueda en tabla personalizada en WordPress

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2023 Todos los derechos reservados