Como mudar URL das imagens em mídia no WordPress

• Publicado em: maio 10, 2019

Faz um bom tempo que não faço um tutorial para esse site, hoje apresentarei uma solução super simples para quem migrou de servidor e WordPress não atualizou o dos attachments.

No meu caso foi que fiz uma instalação de SSL em um domínio de um cliente e tinha varias imagens que não havia atualizado para o HTTPs nas suas URLs.

Dá essa mensagem abaixo:

Mixed Content: The page at '<URL>' was loaded over HTTPS, but requested an insecure image '<URL>'. This content should also be served over HTTPS.

Sub mensagem da mensagem anterior:

Mixed Content: The page at 'https://www.seusite.com.br/' was loaded over HTTPS, but requested an insecure image 'http://www.seusite.com.br/wp-content/uploads/2019/05/bg.jpg'. This content should also be served over HTTPS.

Então, como mudar URL das imagens em mídia no WordPress?

Eu optei pro mais simples e não ir no PHPMyAdmin e mudar via UPDATE no SQL. O plugin escolhido foi Search and Relace. Muito simples usar ele e falai o passo a passo logo mais em baixo.

Como atualizar a URL para HTTPs no WordPress
  • Primeiramente antes de tudo faça backup do seu banco de dados. Depois baixe o plugin e instale no WordPress
  • Navegue até Ferramentas/Search & Replace
  • Digite a URL antiga no campo Search for. Exemplo: http://seusite.com.br
  • Digite a URL nova ou o “s” no http no campo Replace with. Exemplo: https://seusite.com.br
  • Marque a opção All – search and replace! Ou você pode escolher a tabela wp_post para os atualizar as imagens (attachments)
  • Se a opção Dry Run estiver marcada, desmarque ela, pois serve só para você efetuar o teste antes de aplicar mesmo no seu banco
  • Depois tem duas opção que a primeira você pode exportar para um script sql que o próprio plugin gera e a outra opção o próprio plugin faz o update no banco de dados e já está tudo pronto, prefiro essa.
  • Clique em Do Search & Replace e aguarde a mensagem de finalização

Obs.: Você precisa prestar bastante atenção com a barra no final da URL. No caso tenha feito com a barra, terá que restaurar o backup e refazer todo o processo.

Também pode ser feito via SQL através de uma query do MySQL para alterar o WordPress de HTTP para HTTPS no banco de dados:

UPDATE wp_posts SET guid = replace(guid, 'http://www.yoursite.com','https://www.yoursite.com');