Estoy haciendo una actualización y limpieza de un viejo blog que comenzó en Blogger.com, luego se mudó a WordPress 2.1, 2.3 y ahora 3.0. Las imágenes en las publicaciones están dispersas: la mayoría de ellas están en /wp-content/
, pero no todas en /wp-content/uploads/
o /wp-content/uploads/year/month/
. Otros todavía hacen referencia a los servidores de imágenes blogger.com. Quiero consolidarlos a todos /wp-content/uploads/year/month/
, ¿cuál es el lugar "correcto"? Esto debería facilitar las actualizaciones posteriores.
¿Cuál es la mejor manera de hacer esto? También me gustaría actualizar los metadatos, para que la Biblioteca de Medios pueda administrarlos a todos. No pude encontrar ninguna documentación sobre esto, así que lo siento si me la perdí, por favor indíquemela.
Por supuesto, proporcionaría redirecciones de las ubicaciones antiguas a las nuevas. ¿Cuál es la mejor manera de hacer esto? ¿Una plantilla 404.php
, de un complemento? Me gustaría agregar algunos registros, para que podamos encontrar las páginas de referencia y tal vez corregirlas.
(Esta pregunta se hizo originalmente en los foros de soporte de WordPress , pero no obtuvo una respuesta útil allí).
fuente
Respuestas:
W3-Total Cache tiene una función que escaneará todas sus publicaciones e importará cualquier imagen externa a la biblioteca de medios y cambiará las rutas a la nueva ubicación.
Ver captura de pantallafuente
El lugar correcto es la configuración actual, diría. Entonces, si ahora usa una carpeta de carga (en lugar de las subcarpetas de años / mes), vaya con esa (puede estar muy llena, pero es más fácil de ordenar. Así que simplemente mueva todos los archivos de los subdirectorios de año / mes al directorio de cargas y cambie la URL -Paths en la base de datos normalmente debería hacer el trabajo.
Después de que todo esté en una carpeta (y ordenado), puede cambiar el diseño de la carpeta nuevamente y mover los archivos al directorio correcto con un script PHP que lea la fecha de la base de datos. El mismo script exacto necesita adoptar nuevamente las rutas URL.
Es algo así como el mismo guión que sugirió Mike.
En este momento, la interfaz de usuario de WP no admite mover o cambiar el nombre de los archivos manualmente, por lo que está vinculado a algún código propio. Lo que tendría sentido para un lote de todos modos.
Complementos existentes y relacionados
fuente
@ Jan Fabry: Probablemente deba abordar cada caso por separado, es decir, las imágenes alojadas en Blogger y las que están fuera de wp-content, etc.
Aquí hay un complemento para importar desde Blogger; no se ha actualizado en mucho tiempo, pero aún puede funcionar o al menos tener un código que puede usar:
También hay un complemento antiguo que puede o no funcionar:
Más allá de eso, creo que solo necesitará escribir un script PHP que escanee sus archivos y escanee sus publicaciones buscando URL de imágenes incrustadas, desarrolle una lista intersectada y luego mueva los archivos y actualice la referencia en la publicación. ¡O tal vez tengas suerte y ese complemento seguirá funcionando y lo hará por ti!
Buena suerte.
fuente
Tal vez (y eso es solo para futuros lectores, es una Q anterior) puede enumerar todos 'post_type' => 'adjunto' y comenzar a separarse de allí. Me refiero a buscar las publicaciones y guardar las diferentes ubicaciones en una matriz. Luego, resuelva esto para obtener una visión general de dónde se encuentran sus imágenes ...
fuente
/wp-content/uploads/moved/
directorio. De esta manera, todas las publicaciones, incluso aquellas que hacen referencia a ubicaciones antiguas, seguirán funcionando, y mis otros directorios están claros (lo cual fue el mayor problema para mí: no estaba muy claro qué pertenecía a WordPress y qué no). Ahora estoy actualizando los archivos adjuntos existentes y agregando imágenes que aún no se agregaron como archivos adjuntos.