Cómo instalar WordPress en varios dominios de un solo golpe

9
1611

Este es un tip para el WordPress normal (no WordPress MU). Con el fin de hacer esto debes contar con algun conocimiento de PHP.

Primero sube todo los archivos de WordPress a tu host/servidor. Luego, vamos a describir los dominios donde instalaremos WordPress.

Vamos al archivo wp-config.php y haremos algunas modificaciones. Para que tengas una idea de como debe quedar, he aquí un ejemplo. Asumiendo que tengas 3 dominios: dominio1.com, dominio2.net, domino3.biz, el archivo wp-config.php quedaría así:

// ** Configuracion MySQL ** //
define('DB_NAME', 'dbname'); // El nombre de tu base de datos
define('DB_USER', 'user'); // Usuario MySQL
define('DB_PASSWORD', 'password'); // ...y la clave
define('DB_HOST', 'localhost'); // por lo general este valor no cambia
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');

// Como vamos a instalar varios wordpress es una sola base de datos es necesario que cada
// tabla cuente con un prefijo para distingirlos

$current_sitename= $_SERVER[’HTTP_HOST’];

if (($current_sitename == “dominio1.com”) || ($current_sitename == “www.dominio1.com”)){
    $table_prefix = ‘dominio1_’;
}elseif (($current_sitename == “dominio2.net”) || ($current_sitename == “www.dominio2.net”)){
    $table_prefix = ‘dominio2_’;
}elseif (($current_sitename == “dominio3.biz”) || ($current_sitename == “www.dominio3.biz”)){
    $table_prefix = ‘dominio3_’;
}

Luego de modificarlo, según la cantidad de tus dominios, guarda los cambios. Ahora puedes iniciar el proceso de instalación de forma normal.

PostData: No he probado este tip, pero teniendo en cuenta que con WordPress se puede hacer maravillas seguro que funciona.

Vía SmileShop

9 COMENTARIOS

  1. Hola! La duda que tengo no tiene demasiado que ver con este post, pero es el único que he encontrado que puede tener alguna relación.

    El caso es que quiero saber como usar permalinks en una aplicación de gestión que estoy desarrollando.

    Me explico mejor:

    * En WP si tienes activo el permalink de fechas (por ejemplo) pones la dirección http://www.dominio.com/2008/07/03 (por ejemplo) y te lleva a una página (de no hay registros o de contenido), pero lo cierto es que no existen las carpetas 2008, ni 07, ni 03.

    * Por tanto, si lo pruebo en cualquier otro sitio, si no tengo esas carpetas generadas da una página de ERROR del servidor…

    Como hacen esto los de WP?

    Gracias

  2. Ups!!! Ya está!! Ya lo he resuelto (a medias). Se trata de la configuración del módulo MOD_REWRITE de Apache… el problema es que pensaba que estos módulos afectaban a la totalidad del servidor y no sólo a determinadas zonas… Por lo que he leido se puede gestionar con el fichero .htaccess, pero no veo ninguno en la carpeta de wordpress…

    salu2

  3. Siento ser tan pesado… pero acabo de encontrar la forma de hacerlo de WP. No usa .htaccess, sino que en el fichero classes.php del directorio wp-includes tiene esta función, donde se activa RewriteEngine On y se impone condiciones y reglas de uso:

    function mod_rewrite_rules() {
    if ( ! $this->using_permalinks()) {
    return ”;
    }

    $site_root = parse_url(get_settings(‘siteurl’));
    $site_root = trailingslashit($site_root[‘path’]);

    $home_root = parse_url(get_settings(‘home’));
    $home_root = trailingslashit($home_root[‘path’]);

    $rules = “\n”;
    $rules .= “RewriteEngine On\n”;
    $rules .= “RewriteBase $home_root\n”;

    if ($this->use_verbose_rules) {
    $this->matches = ”;
    $rewrite = $this->rewrite_rules();
    $num_rules = count($rewrite);
    $rules .= “RewriteCond %{REQUEST_FILENAME} -f [OR]\n” .
    “RewriteCond %{REQUEST_FILENAME} -d\n” .
    “RewriteRule ^.*$ – [S=$num_rules]\n”;

    foreach ($rewrite as $match => $query) {
    // Apache 1.3 does not support the reluctant (non-greedy) modifier.
    $match = str_replace(‘.+?’, ‘.+’, $match);

    // If the match is unanchored and greedy, prepend rewrite conditions
    // to avoid infinite redirects and eclipsing of real files.
    if ($match == ‘(.+)/?$’ || $match == ‘([^/]+)/?$’ ) {
    //nada.
    }

    if (strstr($query, $this->index)) {
    $rules .= ‘RewriteRule ^’ . $match . ‘ ‘ . $home_root . $query . ” [QSA,L]\n”;
    } else {
    $rules .= ‘RewriteRule ^’ . $match . ‘ ‘ . $site_root . $query . ” [QSA,L]\n”;
    }
    }
    } else {
    $rules .= “RewriteCond %{REQUEST_FILENAME} !-f\n” .
    “RewriteCond %{REQUEST_FILENAME} !-d\n” .
    “RewriteRule . {$home_root}{$this->index} [L]\n”;
    }

    $rules .= “\n”;

    $rules = apply_filters(‘mod_rewrite_rules’, $rules);
    $rules = apply_filters(‘rewrite_rules’, $rules); // Deprecated

    return $rules;
    }

  4. La pregunta de como hacer permalinks.

    La cuestion es que: REALEMENTE el fichero al que apunta el permalink NO EXISTE FISICAMENTE.

    EJ: esta direccion
    http://www.mipagina.com/buscar.php?autor=madona&genero=rock

    es a una direccion como esa a la que se le crean los permalinks y para ello se hace necesario crear y editar el fichero .htaccess

    este fichero se encarga de tomar direcciones como este permalink:
    http://www.mipagina.com/musicos/madona/rock

    y traducirlo y reenviarlo al archivo correspondiente que gestiona la peticion. en este caso el archivo buscar.php

    para ello se crea una carpeta llamada musicos dentro de el directorio raiz de mipagina.com, y dentro de ese directorio se crea un file llamado .htaccess y dentro de ese archivo irian estas lineas:

    Options +FollowSymLinks
    RewriteEngine on
    Rewriterule ^(.+)/(.+) http://mipagina.com/busca.php?autor=$1&genero

    Y eso es todo para crear permalinks como los que usa wordpress y que son tal altamente amados y bien posicionados por google

  5. hola amigos busco algo que sea como tener dos dominios en una misma base de datos.
    ejemplo. dominio1.com y dominio2.com bueno quiero que cuando se actualize el dominio1.com tambien se actualize el dominio2.com se podra hacer esto

Comments are closed.