Limpar pasta de uploads, estrutura do db da biblioteca de mídia

10

Estou fazendo uma atualização e limpeza de um blog antigo que começou no Blogger.com e depois passei para o WordPress 2.1, 2.3 e agora 3.0. As imagens nas postagens estão espalhadas: a maioria delas está em /wp-content/ , mas nem todas em /wp-content/uploads/ ou /wp-content/uploads/year/month/ . Outros ainda fazem referência aos servidores de imagem do blogger.com. Eu quero consolidar todos eles em /wp-content/uploads/year/month/ , que eu acho que é o lugar "correto"? Isso deve facilitar as atualizações posteriores.

Qual é a melhor maneira de fazer isso? Gostaria de atualizar os metadados também, para que a Biblioteca de Mídia possa gerenciar todos eles. Eu não consegui encontrar nenhuma documentação sobre isso, então desculpe se eu perdi, por favor me aponte para isso.

Claro, eu forneceria redirecionamentos dos locais antigos para o novo. Qual é a melhor maneira de fazer isso? Um template 404.php , de um plugin? Eu gostaria de adicionar alguns registros, para que possamos encontrar as páginas de referência e talvez corrigi-las.

(Esta questão foi originalmente perguntada nos fóruns de suporte do WordPress , mas não tem resposta útil lá).

    
por Jan Fabry 13.08.2010 / 20:59

4 respostas

7

O W3-Total Cache tem um recurso que verifica todas as suas postagens e importa imagens externas para a biblioteca de mídia e altera os caminhos para o novo local.

Veja a captura de tela

    
por Chris_O 19.08.2010 / 09:58
2

O lugar correto é a configuração atual, eu diria. Portanto, se você usar uma pasta de upload (em vez de subpastas de anos / meses), use essa (pode ficar muito cheia, mas mais fácil de classificar. Movendo todos os arquivos dos subdiretórios ano / mês para o diretório de uploads e alterando o URL Caminhos no banco de dados normalmente devem fazer o trabalho.

Depois que tudo estiver em uma pasta (e classificada), você poderá alterar o design da pasta novamente e mover os arquivos para o diretório correto com um script PHP que leia a data do banco de dados. O mesmo script precisa adotar os caminhos de URL novamente.

Isso é algo como exatamente o mesmo script que Mike sugeriu.

Neste momento, a interface do usuário do WP não suporta a movimentação ou renomeação manual de arquivos, então você está vinculado a algum código próprio. O que faria sentido para um lote de qualquer maneira.

Plugins existentes e relacionados

por hakre 18.08.2010 / 09:57
1

@Jan Fabry: Você provavelmente precisará resolver cada caso separadamente, ou seja, as imagens hospedadas pelo Blogger e as que estão fora do wp-content, etc.

Aqui está um plugin para importar do Blogger; ele não foi atualizado há algum tempo, mas ainda pode funcionar ou pelo menos ter código que você possa usar:

Há também um plug-in antigo que pode ou não funcionar:

Além disso, acho que você só precisará escrever um script PHP que examine seus arquivos e verifique suas postagens procurando por URLs de imagem incorporados, desenvolva uma lista intersectada e, em seguida, mova os arquivos e atualize a referência na postagem. Ou talvez você tenha sorte e esse plugin ainda funcione e faça isso por você!

Boa sorte.

    
por MikeSchinkel 14.08.2010 / 04:31
0

Talvez (e isso é apenas para futuros leitores - é um antigo Q), você pode listar todos os 'post_type' = > 'anexo' e começar a separar a partir daí. Quero dizer, buscar os posts e salvar os diferentes locais em um array. Então, resolva isso para ter uma visão geral de onde suas imagens estão espalhadas ...

    
por kaiser 13.01.2011 / 09:43