Falha ao importar mídia

8

Quando eu gero arquivo XML com [Ferramentas > Exportar] e use [Ferramentas > Importar] em outro site WordPress recebo "Falha ao importar mídia" para cada tipo de postagem de anexo. E imagens que não conseguiram carregar são hotlinkadas do servidor anterior, o que consome a transferência do servidor anterior ...

Mas quando eu baixo o "Teste de Unidade" do enlace , esse problema não existe. Algumas imagens ainda têm "Falha ao importar mídia", mas são apenas 5 de 30 imagens. Eles têm URLs para seu próprio servidor em seu XML, mas de alguma forma [Tools > Import] consegue baixar suas mídias e substituir essas URLs por novas localizações (não é mais hotlinked).

Qual é o truque para fazê-lo funcionar corretamente sem "Falha ao importar mídia"? Por que até mesmo "Teste de unidade" tem algumas mensagens "Falha ao importar mídia"?

    
por Paul 10.10.2013 / 08:17

6 respostas

5

Eu tive um problema muito semelhante quando movi um Blog WordPress de uma única instalação do WordPress para uma instalação MultiSite com nomes de domínio diferentes, mas com o mesmo IP. Descobri que o problema é a função wp_http_validate_url , que descarta a URL se o IP de origem for o mesmo que o IP de destino.
Você pode adicionar um filtro wp_http_validate_url para evitar isso e permitir a correspondência de IPs de origem e de destino:

add_filter( 'http_request_host_is_external', '__return_true' );

Por favor, veja esta resposta para uma explicação detalhada do gancho do filtro e por que você deve removê-lo após a importação: enlace

    
por Merl 08.07.2015 / 09:32
1

Quando você gerou o arquivo de exportação, ele estava em um servidor ativo ou em um localhost? Essa página da web ainda pode ser acessada? Se a importação de mídia falhar, isso significa que as imagens, como vinculadas fora do XML, estão chegando em 404.

Abra o arquivo XML e veja onde as imagens estão apontando. Se abrirmos o arquivo XML da unidade de tema, veremos linhas como esta:

<wp:attachment_url>http://wpthemetestdata.files.wordpress.com/2008/06/canola2.jpg</wp:attachment_url>

Esse arquivo está claramente disponível para importação. O que seus arquivos attachment_url dizem?

    
por Imperative Ideas 10.10.2013 / 09:44
1

Eu tenho lutado com a importação de mídia para wordpress.org do wordpress.com também. Consegui importar todas as mensagens, mas as imagens ainda estavam vinculadas ao site antigo. Eu estava quase chorando quando percebi que a única solução era baixar e carregar manualmente mais de 200 imagens grandes postadas pelo correio (exportar / importar partes menores de postagens também não funcionavam).

Depois de testar alguns plugins, descobri um que importa sua mídia wordpress automaticamente. Eu não pude acreditar mas realmente funciona. Você tem que ir postar por post, mas ainda é melhor do que o download manual e upload. Aqui está o link se alguém estiver interessado

    
por Claudia 11.01.2015 / 03:22
1

Verifique se seu site não está definido como "Particular".

Quando você exporta o seu blog Wordpress, todo o conteúdo textual é incorporado ao arquivo XML resultante. Todo o conteúdo binário (imagens, anexos de arquivos, etc.) é exportado como URLs apontando para sua localização no blog existente. É por isso que quando você importa de um blog particular do Wordpress você ainda poderá importar todos os posts / etc, mas todas as imagens / etc irão falhar.

Aqui é onde você precisa alterar a configuração da versão atual (2017-06-19):

Documentação relevante do Wordpress:

https://en.support.wordpress.com/settings/privacy-settings/

Observe que isso precisa ser feito a partir das configurações da sua conta no Wordpress.com, e não das configurações do próprio blog, que é outro possível ponto de confusão (e frustração).

    
por nathanchere 19.06.2017 / 14:48
0

Eu tive o mesmo problema e depois de horas pesquisando e testando o problema era que o servidor de origem estava bloqueando downloads de imagens por causa de "Hotlink Protection" sendo ativo no cPanel.

    
por AMIB 28.10.2018 / 16:10
0

Para aqueles que não querem usar add_filter ou não têm idéia de como integrá-lo sem criar um módulo separado. Aqui está um truque rápido e prático para fazê-lo.

Abra este arquivo

vim ./wp-includes/http.php

Vá para a linha 566 e comente o seguinte bloco de código.

if ( ! apply_filters( 'http_request_host_is_external', false, $host, $url ) )
  return false;

Depois de comentar essas duas linhas, entre e adicione a seguinte linha.

return true;

Vá em frente e salve o arquivo e faça o upload do arquivo XML para tentar novamente. Agora você fará o download de todo o conteúdo relacionado. Volte e remova o bloco de comentários e a declaração de retorno e você está pronto para ir.

    
por Rick 28.11.2018 / 00:30

Tags