Ir al contenido principal

Cómo convertir Wordpress MU a Wordpress 3+

Desde hace más de una década he tenido un sitio Web que he estado cambiando de una plataforma a otra, desde PHP-NUKE hasta ahora Wordpress 3.3.1 pasando por Wordpress Multi-Usuario (o MU).
Dado que el sitio ha sido adaptado varias veces a distintas bases de datos, no me fue tan sencillo eliminar la función de multi-usuario (o multi-sitio) para convertirlo en una instalación simple de Wordpress, pero finalmente lo logré y quiero compartir con ustedes mi experiencia por si se alguna vez ustedes también ven en estos apuros.


Primero lo primero

Primeramente, quiero dejar muy claro que quizá el método que les voy a platicar no sea el más indicado, y que probablemente en sus casos específicos haya mejores y más sencillas formas de llegar a lo mismo, pero también debo decir que yo intenté todo lo que encontré por Internet sin éxito. Por esta razón les aconsejo que únicamente sigan este método si y solo si ya intentaron todas las otras opciones y aún no han logrado convertir su blog de MU a Wordpress sencillo.

Asegúrate de leer TODO el contenido de estas instrucciones ANTES de comenzar para que puedas ver si comprendes al 100% lo que estás a punto de hacer y que no dejes tu instalación de Wordpress inservible.

Antes de comenzar, lo más importante es que hagas un respaldo de tu base de datos y probablemente también sea buena idea que de todos tus archivos.

Una vez que descargues tu base de datos y la tengas guardada celosamente en tu disco duro, es tiempo de continuar. Pero antes, asegúrate que todos los blogs estén ya fusionados en un solo blog o que ya no existan, es decir, si tu instalación ya no es multi-site, entonces deberás tener (1) UN solo blog en funcionamiento, el blog principal del cual tú debes tener todos los permisos de administrador.

Comenzamos

  1. Primero vamos por lo más sencillo. Abre tu archivo wp-config.php que está en el directorio base donde tienes instalado Wordpress, y busca la constante WP_ALLOW_MULTISITE y cámbiala a FALSE, o bien, borra el renglón completo.

  2. En el mismo archivo wp-config.php borra o encierra entre asteriscos de comentario las siguientes líneas, si no tienes todas y cada una de ellas no te preocupes, solo reúne las que tienes en un solo bloque y coméntalo tal y como te muestro aquí abajo:
    /***
    define( 'MULTISITE', true );
    define( 'SUBDOMAIN_INSTALL', false );
    define( 'DOMAIN_CURRENT_SITE', 'localhost' );
    define( 'PATH_CURRENT_SITE', '/wordpress/' );
    define( 'SITE_ID_CURRENT_SITE', 1 );
    define( 'BLOG_ID_CURRENT_SITE', 1 );
    $base = '/wordpress/';
    ***/
    

  3. A partir de Wordpress 3.0 se agregaron algunas nuevas llaves de seguridad haciendo un total de 8 que están localizadas precisamente en el archivo wp-config.php que estás editando. Busca en el archivo y asegúrate que tengas todas y cada una de dichas llaves de seguridad, incluyendo NONCE_SALT y que el párrafo luzca similar a este:
    define('AUTH_KEY',         '582%]F(.Cd=4V_=2{J3ixPA+L3y8/;]bDN!yw8}aT:?Wa`V{s5b:fxr#v8`9WEO~');
    define('SECURE_AUTH_KEY',  '2qIRZ?Ly-;(g7Mur-a!|}cj^{!rZ8 JwZ~6-uL)8cvv| psQ/pa!Ut8[Cp+dCh?:');
    define('LOGGED_IN_KEY',    '@jkjd!!T9&sA85URa vW+/r).j+%>ecZVgg:bqP?V9O_`Cx`!tLu$!hvBu!|j~tC');
    define('NONCE_KEY',        '8UJopby#q@dGK.xa+yS$QV/[HcTQmJtutSIf-3eOo/r!mZaOiD~&+Hc3p]e~m^,Z');
    define('AUTH_SALT',        '/Vf|Xw2$8o++7ZkEFv2A@ptb>[++TH*FN3a~b~$|$W21gVB;{q1|pwclYW9A:`Q!');
    define('SECURE_AUTH_SALT', ',*|p>iK(z}l!MT^($`.:F(KsRTX8SPt7Ljv^8#i5H%95@KynY?WpoO9r7W$,$zti');
    define('LOGGED_IN_SALT',   'uTRYEtY+4[nP@~hfiAElu().|!F|(@Q)L@}r>N{(S2!}%#>+tS8J1,eA3!+FQU9=');
    define('NONCE_SALT',       'fBB]_%,@! hffx ;x6kO%?`tsUIX:^y| pt:(a|CySwYzxb>O*|F:f2Yed|= jNK');
    
    

  4. Ahora busca el archivo .htaccess en el mismo directorio donde encontraste wp-config.php. Si no lo ves, quizá esté en modo oculto y debas configurar tu aplicación para que pueda ver archivos ocultos. Una vez que hayas abierto el archivo en modo de edición, borra las siguientes líneas:
    #BEGIN WordPress
    RewriteEngine On
    RewriteBase /wordpress/
    RewriteRule ^index\.php$ - [L]
    
    # uploaded files
    RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
    
    # add a trailing slash to /wp-admin
    RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
    
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule  ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
    RewriteRule  ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
    RewriteRule . index.php [L]
    # END WordPress

  5. Ahora procede a recrear los enlaces permanentes y agregar las líneas necesarias a .htaccess (wp-admin/options-permalink.php)

  6. Abre ahora una sesión de MySQL y de la tabla wp_users borraremos los campos spam y deleted. Puedes usar el siguiente comando SQL:
    ALTER TABLE `wp_users` DROP `spam`, DROP `deleted`;

  7. También podemos borrar las siguientes tablas (ajusta el prefijo si es necesario):
    1. wp_blogs
    2. wp_blog_versions
    3. wp_registration_log
    4. wp_signups
    5. wp_site
    6. wp_sitemeta
    7. wp_sitecategories
    Puedes usar el siguiente comando SQL:
    DROP TABLE
        `wp_blogs`,
        `wp_blog_versions`,
        `wp_registration_log`,
        `wp_signups`,
        `wp_site`,
        `wp_sitemeta`,
        `wp_sitecategories`;

  8. El siguiente paso quizá no sea necesario para todos, pero en mi caso si lo tuve que llevar a cabo. Si las tablas de la base de datos de tu blog actual contienen el prefijo WP_1_, entonces quizá debas renombrar cada una de esas tablas quitando el 1 y dejando solamente WP_ y el nombre de la tabla. Ejemplo:

    Cambiar el nombre de wp_1_links por wp_links

  9. En este punto no intentes entrar a tu instalación WordPress porque probablemente no tendrás los permisos necesarios, ya que eres administrador para el blog wp_1_ pero no para el blog wp_. Por esto ahora debemos transferir todos esos permisos administrativos cambiando todas las instancias donde aparezca wp_1 para wp_. Esto lo haremos primeramente haciendo una búsqueda en MySQL por todas estas instancias donde la frase wp_1 exista en cualquier tabla. Toma nota de las tablas en que aparecen porque vamos a necesitar saber en cuáles campos aparece wp_1_ para cambiarlo por wp_.

    Bien, supongamos que la frase wp_1_ aparece múltiples veces en la tabla wp_usermeta. Debemos ver en cuál campo aparece. Si todo está correcto, el campo que lo contiene debe ser meta_key, pero verifica para confirmar.

    Una vez confirmado, vamos a correr un pequeño comando para actualizar la tabla con la nueva información de reemplazo. Abre una ventana de comando para MySQL y escribe lo siguiente:

    UPDATE [tabla] SET [campo] = REPLACE([campo], "wp_1_", "wp_");
    
    Cambia [tabla] por el nombre de la tabla y [campo] por el nombre del campo. Por ejemplo, en el caso de la tabla wp_usermeta:

    UPDATE wp_usermeta SET meta_key = REPLACE(meta_key, "wp_1_", "wp_");
    
Has esto para las otras tablas y/o campos y deberás haber convertido tu instalación de WordPress MU a Wordpress 3+

"El Código es Poesía" - Wordpress
Publicar un comentario

Entradas populares

20 Letreros de Este Hogar Es...

Parece que estos últimos días está de moda publicar en Facebook imágenes graciosas de letreros para advertir a las visitas para algunos quizá "indeseables" y hoy quiero compartir algunas de ellas.Hace unos días les compartí un letrero que rezaba "En este hogar solo creemos en CHUCK NORRIS", y por eso en esta ocasión recolecté esta serie de 20 letreros que me he encontrado por ahí en distintos lugares, quien sabe, a lo mejor encuentran alguno que les gustaría usar para su casa.Este hogar es alcoholico. No aceptamos propaganda de pizzerías ni de otros negocios que no vendan licor ¡Viva Santo Tomás, el Padre Kino y Santa Clara! Oh, dioses, por caridad / cuiden siempre a nuestros muchachos / y si han de morir borrachos / ¡¡¡Que se haga tu voluntad!!!
Este hogar es ateo. Aceptamos todo tipo de ideas (incluso si tiene estas). Si usted desea conversar sobre cuaqluier tema es bienvenido siempre que lo haga desde un enfoque crítico, sin dogmas y respetando todos los puntos d…

Surge el cine pornográfico XXX Cristiano en Brasil

La propuesta del cine porno Cristiano surge en Brasil que supuestamente cumplirá con los preceptos de la Iglesia¡No inventen! Me estoy enterando por medio del sitio De10.mx del Universal que en Brasil han creado un sitio web con porno para Cristianos por medio del cual se proponen transmitir el mensaje de que el cuerpo es un regalo divino y debe ser tratado correctamente.Películas Pornos CristianasSi bien parece ser un movimiento novedoso, la realidad es que ya existen intentos similares en los que se intenta presentar películas sexuales en las que se "glorifique" el acto sexual y, frecuentemente, con la intención de mostrar lo que para los Cristianos es la forma "correcta" de tener relaciones sexuales, tal y como el sexo sola y exclusivamente entre parejas heterosexuales y con fines específicos de reproducción, y se afirma que la intención es que los videos sean visto por parejas que desean más información sobre cómo debe ser el "Sexo Cristiano" y no par…

101 formas para molestar a la gente

¿Te sientes con ánimo de divertirte enfadando a las personas? Esta lista te da unas ideas entretenidas para hacerlo.

He estado viendo que entran muchas personas a mi blog desde Google buscando la lista de 7 Métodos para Desquitarse con Alguien, de modo que, aunque esta lista ya tiene su tiempo rondando en Internet en Inglés, se las comparto aquí en español.




Cómo fastidiar a las personasDeja la máquina copiadora de la oficina configurada para reducir a 200%, extra oscuro, con papel de 17 pulgadas, y 99 copias.En el reverso de todos los cheques que hagas, escribe"por favores sexuales".Especifica en la ventanilla del drive-thru que tu orden es "PARA LLEVAR".Siempre trae contigo paquetitos de Ketchup y aplástalos cuando vayas caminandoInsiste en mantener tus limpiabrisas corriendo todo el tiempo, aunque no llueva, "para mantenerlos afinados".Responde a todo lo que alguien te diga con "eso es lo que tu crees".Recolecta información irrelevante en sitios…