g) Themes y plugins: Los únicos archivos que deberás copiar de tu WP antiguo, incluso en esta instalación provisional que estamos realizando, son los que se encuentran en las carpetas ‘wp-plugins’ y ‘wp-themes’, ambas en ‘wp-content’. Pero atención:
- Plugins: Los que quieras que afecten a todos los blogs por defecto, deben ir en la carpeta ‘wp-content>mu-plugins’, y ni siquiera hará falta activarlos. Los que quieras que se activen independientemente para cada blog en el panel de administración, deberán ir en el mismo sitio de siempre: ‘wp-content-plugins’.
- Themes: Los themes en WPMU van en la carpeta ‘wp-content>themes’. Para que cada blog pueda activar el tema que desee, antes deben ser aprobados por el administrador en el panel de control ‘Administración>Temas’.
h) Imágenes: Una de las grandes sorpresas de la herramienta de exportación/importación es que también te importa las imágenes (y cualquier otro documento) que tengas en la carpeta ‘wp-content-uploads’ de tu instalación anterior, creando la misma estructura de fechas en el árbol propio de WPMU, que difiere sensiblemente del de WP. Mientras que en WP la estrucutra es justo ésa (‘wp-content>uploads>años>meses’), en WPMU es ‘wp-content>blogs.dir>iddecadablog>files>años>meses’. De tal modo que las imágenes del blog principal estarían en una estructura del tipo ‘wp-content>blogsdir>1>files>2009>08′.
Pero, incompresiblemente, la herramienta no corrige las direcciones de las imágenes en los posts, con lo cual, aún teniendo las imágenes en tu WPMU, los enlaces de las entradas siguen apuntando a la antigua instalación (WTF?!). Así que toca ponerse el mono de trabajo y cambiar las direcciones. ¿Cómo? Puedes optar por dos métodos:
- Abrir el fichero xml de exportación de cada blog que quieres importar en un editor de textos y cambiar (buscar y reemplazar) todo lo que sea ‘/wp-content/uploads/’ por ‘/wp-content/blogs.dir/files/X/’, donde ‘X’ es la id en WPMU del blog que estás editando (puedes ver cada ID en el panel de administración: ‘Administración>Blogs’), o
- Ir a phpMyAdmin y ejecutar esta consulta SQL en la base de datos de cada blog:
update wp_X_posts set post_content = replace(post_content, '/wp-content/uploads', '/wp-content/blogs.dir/X/files')
donde igualmente las ‘X’ son las id del blog que se edita.
NOTA: Haz esto con mucho cuidado. Si no sabes trabajar con bases de datos, mejor pídele ayuda a un experto o a los responsables de tu hosting. Observa también que los prefijos de las tablas han de ser necesariamente ésos, ‘wp_X_’, por lo que tendrás que cambiarlos también una vez realizada la migración, abriendo los archivos sql exportados en el editor de texto y cambiando ‘tuprefijo_’ por ‘wp_X_’ para cada blog.
i) Comprobación: Ahora ya tienes todos tus blogs rulando en la nueva instalación y, si has ejecutado bien los pasos, todo debería funcionar de maravilla. Comprueba que todo va bien dentro de la instalación provisional: posts, enlaces, páginas, imágenes… Notarás que los archivos (imágenes, audio, pdf…) no incluidos automáticamente en ‘wp-content>blogs.dir>iddecadablog>files>años>meses’ siguen funcionando bien. Lógico, aún están en tu antigua instalación y no hemos cambiado los enlaces a ellos, ya que seguirán funcionando perfectamente cuando hagamos el traslado final, que es el siguiente paso.
También te puede interesar...
Comentarios, mensajes, tuits, RT, pingbacks, trackbacks...
(Al darle a '¡Opina!', aceptas nuestras Condiciones de Participación)































{ 25 comentarios }
Hola
Es uno de los mejores tutoriales en Español que he encontrado. Felicidades por el trabajo realizado.
Solo realizaría una aportación y es por el tema de la inserción de vídeos.
No se debería modificar el archivo kses.php por dos motivos. El primero, por que no es recomendable nunca meter mano al código y el segundo, ya que a la primera actualización de wpmu, podríamos perder todas las modificaciones y como consecuencia, que todos los blogs de nuestra red o comunidad perdieran la capacidad de mostrar vídeos. En el momento en que nos diéramos cuenta, vuelta a modificarlo y todos con vídeos de nuevo.
Lo mejor es usar un plugin mu que lo que hace es añadir las directivas kses automáticamente de forma que por micho que actualicemos, siempre, nuestra instalación de wpmu, tendrá la capacidad de inserción de vídeos y otras cosas.
Mírate este enlace que lo detallo. Si quieres, bajate el plugin y veras que lo podrás extender todo lo que desees con todas las directivas que quieras.
http://insertarvideosyoutube.buddypress-es.org/
Un saludo
.-= Ahora mismo, en el blog de José Conti: Nuevo archivo de traducción para bbPress 1.0.2, corregido por Ayuda WordPress =-.
Muy buena guía, como dices no sirve para cualquier tipo de instalación pero da muy buenas pistas de aspectos concretos que sí sirven para cualquier instalación.
Felicidades Manuel
P.D.: ¿por qué no te has animado con un buddypress?
.-= Ahora mismo, en el blog de Fernando Tellado: Día del Blog – Videoconversación y Taller =-.
@Fernando Tellado: muchas gracias, compañero. Pues sí que ando con BuddyPress, pero por ahora sólo en ámbito privado, para ir probando funciones
.
Un saludo.
Una cosa,
A lo anteriormente comentado (que aun está pendiente de moderación) añadiría que en cPanel, desde la versión 11, el wildcard se realiza desde el panel de control. Solo hay que añadir un subdominio que denominaremos * y lo redirigiremos al home, y ya está. Antes era muy complicado y había que seguir guías como la que mencionas. Ahora ya no hace falta.
Un saludo
.-= Ahora mismo, en el blog de José Conti: Nuevo archivo de traducción para bbPress 1.0.2, corregido por Ayuda WordPress =-.
@José Conti: muchas gracias por el apunte. No conocía ese plugin. Había instalado el Unfiltered MU, que viene a hacer lo mismo, pero no funcionaba en las importaciones, sólo en lo que generas como nuevo. Probaré éste a ver qué tal.
Un saludo.
Muy bueno, y gracias por tu ayuda José Conti también, me servirá de mucha ayuda, para realzar los cambios en unos de mis blog y aprender un poco más.
Hola, muy bueno el articulo, pero le veo un posible fallo, en el punto h)imágenes…
update wp_X_posts set post_content = replace(post_content, ‘/wp-content/uploads’, ‘/wp-content/blogs.dir/X/files’)
si tienes el wpmu configurado como dominos, esto no es correcto, debería ser algo así:
update wp_X_posts set post_content = replace(post_content, ‘/wp-content/uploads’, ‘/files’)
Un saludo.
.-= Ahora mismo, en el blog de Laullon: Nuevo buscador =-.
@Laullon: ¿has leído bien las advertencias? Porque más claro no he podido dejarlo, ¿no crees? Se trata de un tutorial específico para el modelo subodminio.dominio.com. En el caso del modelo dominio.com/subdominio basta con adapat la ruta específica a esa consulta SQL.
Un saludo.
por eso te lo digo, si lo haces con dominios el path para la imagenes (y demas adjuntos) es “/files/”.
.-= Ahora mismo, en el blog de laullon: Nuevo buscador =-.
@laullan: ya, pero sigo sin ver el “fallo” por ninguna parte
.
Un saludo.
En WP la url de una imagen de un post es:
http://mydominio.com/wp-content/uploads/2009/08/0927.jpg
En WPMU es:
http://sub.mydominio.com/files/2009/08/0927.jpg
Si te fijas el path es ‘/files’ y no ‘/wp-content/blogs.dir/X/files’
Ahora es cuando entra en acción de mod_rewrite (mira tu .htaccess):
#uploaded files
RewriteRule ^(.*/)?files/$ index.php [L]
RewriteCond %{REQUEST_URI} !.*wp-content/plugins.*
RewriteRule ^(.*/)?files/(.*) wp-content/blogs.php?file=$2 [L]
Esto hace que se ejecute un php llamado ‘blogs.php’ que será el encargado de localizar la imagen correcta según el blog y servirla…
Posiblemente una imagen con la URL ‘/wp-content/blogs.dir/X/files’ también funcione, pero te puede traer algún que otro problema.
Entra en cualquier blog de ftblg.com y mira la dirección de las imágenes.
.-= Ahora mismo, en el blog de Laullon: Nuevo buscador =-.
mira la url de la imagen de este port
http://mangasverdes.es/files/2009/08/wp-wpmu1.jpg
no aparece el ID del blog.
.-= Ahora mismo, en el blog de Laullon: Nuevo buscador =-.
Hola
Estás cometiendo un error de concepto. Estas queriendo utilizar un path creado por un mod_rewrite.
En WPMU, sea en subdirectorios o en subdominios, todos los archivos de casa usuario/blog se guardan en ‘/wp-content/blogs.dir/X/files’ siendo X la id de usuario y al script de importación, le debes decir “Dónde las debe guardar”.
Si realizaras la modificación tal y como comentas, recibirías un error, ya que “No Existe” la carpeta ‘files’ en el directorio raiz, es por decirlo de alguna manera, es un subdirectorio “Virtual” para hacer bonito el path y si al ver el error, crearas la carpeta ‘files’, después no se mostrarían las antiguas imágenes en el blog, ya que no las encontraría ( las iría a buscar a /wp-content/blogs.dir/X/files no a /files/ )
No se si me habré explicado correctamente.
Un saludo
.-= Ahora mismo, en el blog de José: Nuevo archivo de traducción para bbPress 1.0.2, corregido por Ayuda WordPress =-.
@laullon, ultima explicación, sino, haz lo que quieras, ya te encontraras el problema el dia que quieras realizar una migración.
Como tu bien dices, mod_rewrite te envía a blogs.php ¿y cual crees que es una de las funciones de este archivo? Identificar la id del blog. ¿y que consigue WPMU sabiendo la id del blog? Pues saber donde se almacenan todos los archivos del blog ¿y donde se almacenan los archivos? En /wp-content/blogs.dir/X/files no en files.
¿Tienes una instalación de WPMU? si la tienes, accede y dime donde ves el subdirectorio files en el directorio raíz, no existe.
Si no tienes una instalación de wpmu, no se que estas defendiendo o discutiendo.
Este ha sido mi ultimo comentario al respecto. A partir de aquí, haz lo que quieras.
.-= Ahora mismo, en el blog de José Conti: Nuevo archivo de traducción para bbPress 1.0.2, corregido por Ayuda WordPress =-.
vale, ya veo. No savenos la diferencia entre url y directorio. fin.
en cuanto a lo de si tengo wpmus o no, podemos ir mas alla, si quieres comparanos curriculums. a ver quien lo tiene mas “largo”.
.-= Ahora mismo, en el blog de laullon: Nuevo buscador =-.
Hola
Solo una cosa, y utilizando tu mismo ejemplo de imagen:
El ejemplo de imagen que tu defiendes, que te digo yo que está modificado y que tu insistes en que no:
http://mangasverdes.es/files/2009/08/wp-wpmu1.jpg
Aquí está la situación real de la imagen:
http://mangasverdes.es/wp-content/blogs.dir/1/files/2009/08/wp-wpmu1.jpg
Y soy tan valiente, que me atrevo a ir más allá:
Entrada en http://ftblg.com
La entrada es:
http://ftblg.com/como-fotografiar-la-luna/
URL de la imagen de la luna (la que se muestra en navegador)
http://ftblg.com/files/2009/05/luna.jpg
Situación real de la imagen en la estructura WPMU:
http://ftblg.com/wp-content/blogs.dir/1/files/2009/05/luna.jpg
Y por último, no se que me hablas de CV, yo solo he dicho, sino leetelo de nuevo, que si tenias una instalación de WPMU, miraras y me dijeras donde veías la carpeta files en el directorio raíz, y si no la tenias, que no sabía de que estábamos discutiendo. Yo no he dicho en ningún momento que no lo tuvieras.
Tu sabrás porqué te has molestado.
Pero repito, mírate las url’s que te he dejado arriba y veras las ubicaciones reales de los archivos.
Y sí, fin, yo no te he despreciado en ningún momento, tu ya lo has hecho.
Y desde luego, nunca alardearía de lo que he hecho o he dejado de hacer.
Un saludo
.-= Ahora mismo, en el blog de José Conti: Nuevo archivo de traducción para bbPress 1.0.2, corregido por Ayuda WordPress =-.
@laullon: sigo sin ver el problema por ningún lado, aunque veo que has extendido tu argumento inicial a otros parámetros. Cambiar las url de de la carpeta ‘uploads’ de WP por el ‘path’ completo de WPMU tampoco es ningún error. Es, como mucho, otro método igual de válido que dirigirlo simplemente a ‘files’.
Esto no causa ningún problema, porque precisamente para eso está el mod_rewrite del htaccess, para traducir el path absoluto en un permalink ‘friendly’.
Sin embargo, este método me gusta más porque, por un lado, refleja en la base de datos la estructura y no el enlace permanente (en WP son coincidentes, en WPMU no) que, quizá, algún día pueda cambiar si quiero, por ejemplo traduciéndolo o dándole otro nombre; y segundo, porque, como comenta José, prefiero que mi programa sepa exactamente dónde están las imágenes ‘físicamente’, y eso solo es posible definiendo el ‘path’.
De todas formas, reitero, en el post advierto claramente que se trata de mi experiencia personal (que, por cierto, me va de maravillas). Puede haber otras múltiples formas, pero eso no significa que el resto sea un ‘error’.
Un saludo.
Vale, quizás no tenia que haber usado la palabra ‘error’…
.-= Ahora mismo, en el blog de Laullon: Nuevo buscador =-.
Muy bueno, yo estoy pensando si lanzarme a la aventura de montarlo para unificar todos los blogs bajo una gestión.
.-= Ahora mismo, en el blog de David Carrero Fdez-Baillo: Guía completa de Mac OS X Snow Leopard =-.
Hola, primero que nada, felicidades por el blog!
Espero me puedan ayudar:
Estoy instalando wordpress mu, en eso no tengo líos, tu tutorial es excelente, sólo tengo ésta duda: segun el readme, hay que modificar el apache, php y las dns, segun mangas verdes, solo basta con los dns…
¿Qué hago? Uso cpanel.
.-= Ahora mismo, en el blog de Simbelmyne!: Mapa completo de Springfield =-.
@Simbelmyne!: esto es lo que dice el post:
Es decir, que en todos los casos tienes que modificar lo que te dice el ‘readme.txt’, siempre y cuando te haga falta.
Un saludo.
Ok, es que sé nada de todo ésto, y no sé cuando hará falta y cuando no, más que nada por que mi empresa de alojamiento no me concede el panel completo para modificarlo, y ocupo enviarle las instrucciones, en este caso, pues mandaré todas, no creo que existan problemas por modificar todos si no es necesario.
Muchas gracias, tu tutorial me ha ayudado mucho, el mejor en español, aunque sea una guía no generalizada, da mucha luz a los que como yo, estamos muy weyes (que soy muy torpe). No conocía tu blog, directo al reader x
.-= Ahora mismo, en el blog de Simbelmyne!: Mapa completo de Springfield =-.
@Simbelmyne!: muchas gracias, y suerte con la mudanza
.
Un saludo.
Hola, no sé si me puedas ayudar mmeida, ya en el servidor de prueba instalé todo, configuré todo… pero wordpress normal, no me deja exportar, me dice que hay un error en el archivo export+import file, ni con plugin puedo… qué puedo hacer? Estoy desesperado
@Simbelmyne: pues sí que es raro eso. No tengo ni idea. Lo único que se me ocurre es que lo intentes con la base de datos, desde phpMyAdmin.
Un saludo.
Los comentarios están cerrados.
{ 1 trackback }