Es frecuente encontrarnos con la necesidad de contar con varias instalaciones de WordPress en nuestro hosting (por ejemplo en subdominios que dependen del dominio principal)

Si tenemos la posibilidad de crear más de una base de datos no existe ningún problema puesto que podríamos utilizar una diferente para cada una de las instalaciones de WordPress. Pero lo normal es que en la mayoría de nuestros planes contratados con nuestro proveedor de hosting (me refiero sobre todo a los más económicos) sólo esté disponible una única base de datos, lo cual complica (aunque no demasiado) la tarea de llevar a cabo este trabajo.

Aunque no es lo más adecuado, WordPress permite modificar los prefijos de las tablas que se van a utilizar para cada instalación. Y digo que no es lo más adecuado porque si comenzamos a realizar instalaciones sin ningún control nos pueden pasar dos cosas:

  • puede llegar un momento en el que la base de datos se haga tan grande que no permita más instalaciones (por mucho que cambiemos los prefijos a las tablas)
  • podemos despistarnos e instalar un nuevo WordPress sin haber cambiado dichos prefijos a las tablas de la nueva instalación y cargarnos por completo instalaciones anteriores. Por ello te recomiendo siempre hacer una copia de seguridad de todo el contenido (archivos y bases de datos) antes de hacer nada

En el caso de que no te quede más remedio que utilizar la misma base de datos para varias instalaciones de WordPress sigue los siguientes pasos:

  1. Realiza una copia de seguridad de los archivos y de la base de datos que tienes hasta ahora funcionando correctamente
  2. Descarga la última versión de WordPress de la página oficial y descomprímela en una carpeta de tu ordenador
  3. Abre dicha carpeta y abre en tu editor favorito el archivo wp-config-sample.php Busca las siguientes líneas y rellénalas con los datos de tu Base de Datos (Host, Nombre de la base de datos, Nombre del usuario y contraseña de MySQL)
    wp-config-sample-rellenar
  4. Localiza en el mismo archivo wp-config-sample.php la línea $table_prefix  = ‘wp_’; y sustituye wp_ por el prefijo que desees para cada instalación. Ten en cuenta que sólo es posible utilizar letras, números y guiones bajos. Ejemplo: $table_prefix  = ‘wp_subdominio1’;
  5. Guarda el archivo con el nombre wp-config.php
  6. Sube los archivos a tu servidor de hosting, a la carpeta desde donde quieres llevar a cabo la nueva instalación de WordPress
  7. Ejecuta en tu navegador la nueva instalación: http://tudominio.com/wp-admin/install.php

De esta forma nos aseguramos de crear tablas con prefijos diferentes para cada instalación de WordPress.

Igualmente pasaría con otros gestores de contenidos: por ejemplo las tablas de Joomla! 1.5 comienzan por defecto con el prefijo jos_, las de Joomla! 3 con el prefijo j3_, y las de WordPress con el prefijo wp_, y las tres instalaciones podrían convivir perfectamente en la misma base de datos sin generar errores ya que no utilizarían las mismas tablas.

Espero que os haya servido de ayuda. Os invito a comentar vuestras experiencias.

Cómo aprovechar una misma base de datos para varias instalaciones de WordPress
Etiquetado en:

9 pensamientos en “Cómo aprovechar una misma base de datos para varias instalaciones de WordPress

  • 15 abril, 2015 a las 2:12 pm
    Enlace permanente

    I simply want to mention I’m newbie to blogging and site-building and truly savored you’re web page. Probably I’m going to bookmark your blog post . You amazingly have tremendous well written articles. Thank you for revealing your web page.

    Responder
  • 21 febrero, 2017 a las 6:54 pm
    Enlace permanente

    Hola como interesante el post. Surge una pregunta. Después de haber realizado los pasos de cambiar lo de wp-config.php; dice el tutorial en el punto seis, que “Sube los archivos a tu servidor de hosting, a la carpeta desde donde quieres llevar a cabo la nueva instalación de WordPress” … perdón si la pregunta puede resultar boba, pero se me genera duda.
    Subo a la nueva carpeta TODOS los archivos del descomprimido wordpress incluyendo el que cambie wp-config?… o … SOLO subo el archivo wp-config?
    La duda surge es porque como ya existen todos los archivos de worpress en otra carpeta, depronto subir nuevamente (asi sea en otra carpeta) no sea necesario…. me hice entender? O el hecho de ya ser otra carpeta requiere subirlos nuevamente.

    Responder
    • 21 febrero, 2017 a las 8:16 pm
      Enlace permanente

      Hola Andrés,
      Efectivamente debes subir TODOS los archivos del nuevo WordPress que tienes en tu ordenador (incluido el wp-config) ya que vas a instalar un nuevo WordPress en una nueva carpeta, y no puede utilizar la instalación inicial que hay ya instalada.
      Una vez copiados todos los archivos a la nueva carpeta (por ejemplo http://TUDOMINIO/nuevo_wordpress) ejecuta en tu navegador http://TUDOMINIO/nuevo_wordpress y comenzará la instalación de tu segundo WordPress.
      Espero haberte ayudado y cualquier pregunta no dudes en realizarla!
      Y gracias por leerme!
      Saludos

      Responder
  • 30 enero, 2019 a las 11:00 am
    Enlace permanente

    Había visto otros posts hablando de como hacerlo pero este es el único donde se explica como hacerlo bien. No se si le usaré a nivel producción pero para testear sí y funciona. Muchas gracias.

    Responder
    • 1 febrero, 2019 a las 6:27 am
      Enlace permanente

      Gracias a tí por leerme. Efectivamente a nivel de producción no es recomendable tener todo en una misma Base de Datos, pero en entronos de desarrollo viene muy bien.
      Saludos!

      Responder
  • 23 septiembre, 2019 a las 8:12 pm
    Enlace permanente

    Hola, gracias por tu tutorial, me parece que esta facil, solo una dudas, puedo instalar un theme nuevo, plugins, agregar codigos al head todo esto al dominio nuevo o esto modificaria la base de datos y podria modificar la base de datos y causar conflictos?

    Y otra consulta, se puede compartir solo una tabla de la base de datos, lo que gustaria hacer es una nueva instalacion de wordpress(con un nuevo dominio) y que esta tenga solo su base de datos de otra website pero que utilize o comparta solo una tabla, especificamente la de los post(wp_posts), se puede o es imposible?

    Gracias.

    Responder
    • 27 septiembre, 2019 a las 8:11 pm
      Enlace permanente

      Gracias Juan por tu comentario,
      En primer lugar decirte que, aunque se puede hacer, no es recomendable utilizar una misa base de datos para varios CMS de forma simultánea, porque la gestión de tablas en base de datos puede llegar a convertirse en algo engorroso y difícil de gestionar. Habría que gestionar perfectamente los prefijos de tablas para no modificar/borrar tablas que no correspondan.
      A la primera pregunta decirte que si haces dos instalaciones de WordPress (o cualquier CMS) en una misma base de datos, si haces modificaciones (nuevos themes, cambios en el código, etc…) solo aplicarán a la instalación en la que estés haciendo los cambios ya que se modificarán tablas de esa instancia del gestor de contenidos (que solo depende de sus tablas y no de otras instalaciones, aunque estén tirando de la misma Base de Datos)
      Sobre la segunda cuestión, no estoy totalmente seguro de si es posible, pero como te he dicho al principio, la gestión de l base de datos puede llegar a convertirse en algo complicado. No te lo recomiendo.
      Saludos!

      Responder

Responder a lista de emails Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.