Atualizar WordPress sozinho ou contratar: quando cada um faz sentido
Atualizar WordPress sozinho é possível — mas depende do site, do ambiente e do que está em jogo. Entenda quando você pode fazer, quando não deve, e o que separa os dois casos.
Imagem é, na maioria dos sites WordPress, o item mais pesado da página. Uma home com banner, galeria de produtos e fotos de equipe facilmente passa de alguns megabytes só em JPG e PNG, e é isso que faz o visitante no celular esperar, o Google PageSpeed reclamar e a nota de Core Web Vitals cair.
O WebP resolve boa parte desse problema: mesma aparência, arquivo bem menor. O que costuma travar quem tenta é a parte prática. Converter uma imagem é fácil. Substituir todas as imagens JPG e PNG de um site WordPress em produção, sem quebrar página, miniatura nem SEO, já é outra história.
Este guia mostra os quatro métodos possíveis, qual escolher em cada situação, o passo a passo de cada um, como testar se funcionou e o que fazer quando algo dá errado. Também explica por que atalhos comuns, como rodar UPDATE ... REPLACE direto no banco, podem causar mais problema do que resolver.
WebP é um formato de imagem criado pelo Google para a web. Ele suporta compressão com perda (como o JPG), compressão sem perda (como o PNG), transparência e até animação, tudo em um único formato.
| Característica | Como o WebP se comporta |
|---|---|
| Fotos | Compressão com perda, em geral menor que o JPG com qualidade visual equivalente |
| Gráficos e logos | Compressão sem perda, em geral menor que o PNG |
| Transparência | Suportada, inclusive em compressão com perda |
| Animação | Suportada, como alternativa mais leve ao GIF |
| Suporte nos navegadores | Chrome, Edge, Firefox, Safari e a grande maioria dos navegadores atuais |
Segundo a própria documentação do Google, imagens WebP sem perda ficam cerca de 26% menores que PNG, e as com perda ficam entre 25% e 34% menores que JPEG de qualidade comparável. Na prática, o ganho varia conforme a imagem, e em fotos grandes costuma ser ainda maior.
Vale um aviso honesto: WebP sozinho não transforma um site lento em rápido. Se o problema for hospedagem fraca, plugin pesado ou falta de cache, a imagem é só uma parte do diagnóstico. Para entender o quadro completo, veja por que seu site fica lento mesmo depois de otimizado e WordPress lento: causas e diagnóstico.
Qualquer mudança em massa nas mídias do site exige cuidado. Antes de tocar em qualquer coisa:
.htaccess, mas Nginx não. Isso muda o caminho a seguir.Existe uma confusão comum: “substituir JPG e PNG por WebP” pode significar duas coisas diferentes. Uma é entregar WebP aos visitantes mantendo os arquivos originais (mais seguro). Outra é trocar de fato os arquivos e as URLs (mais definitivo, mais arriscado).
| Método | Quando faz mais sentido |
|---|---|
| 1. Plugin que converte e entrega WebP | A maioria dos sites. Rápido, reversível e sem mexer no banco |
| 2. Conversão manual e regras no servidor | Quem tem acesso ao servidor e quer controle total, sem plugin |
| 3. Substituição definitiva com WP-CLI | Sites que querem abandonar de vez JPG e PNG, com equipe técnica e backup |
| 4. CDN que converte na borda | Sites com muito tráfego ou que já usam uma CDN com otimização de imagem |
Se você não sabe qual escolher, comece pelo método 1.
Plugins de otimização de imagem convertem os arquivos para WebP e servem a versão certa conforme o navegador do visitante, sem alterar as URLs gravadas no banco. Por isso, são a opção mais segura. O Converter for Media é um exemplo bastante usado, e há alternativas como ShortPixel, Imagify e EWWW Image Optimizer.
Passo a passo geral
| Forma de entrega | Como funciona |
|---|---|
Regras no servidor (.htaccess) | O servidor troca o arquivo de forma transparente quando o navegador aceita WebP |
| Carregador via PHP | O WordPress decide e entrega o WebP, útil quando não dá para editar regras do servidor |
Tag <picture> | O HTML passa a oferecer a imagem WebP com fallback para JPG ou PNG |
Vantagens: reversível (desativou o plugin, tudo volta ao normal), mantém os originais como fallback e não mexe no banco.
Desvantagem: você passa a depender de um plugin. Para saber como avaliar essa dependência, leia o custo invisível de plugin gratuito no WordPress.
Aqui você converte as imagens por linha de comando e configura o servidor para entregar a versão WebP. Exige acesso por SSH ou FTP, mas não adiciona plugin ao site.
1. Converta os arquivos mantendo o original ao lado
Com a ferramenta cwebp, do próprio projeto WebP:
find wp-content/uploads -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) \
-exec sh -c 'cwebp -quiet -q 82 "$1" -o "$1.webp"' _ {} \;
Esse comando cria, por exemplo, foto.jpg.webp ao lado de foto.jpg. A transparência dos PNG é preservada.
2. Configure o Apache ou LiteSpeed para servir o WebP quando possível
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_ACCEPT} image/webp
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME}.webp -f
RewriteRule ^(.+)\.(jpe?g|png)$ $1.$2.webp [T=image/webp,E=REQUEST_image]
</IfModule>
<IfModule mod_headers.c>
Header append Vary Accept env=REQUEST_image
</IfModule>
<IfModule mod_mime.c>
AddType image/webp .webp
</IfModule>
A regra só entrega o WebP quando o navegador anuncia que aceita o formato e quando o arquivo .webp existe. Caso contrário, o JPG ou PNG original é servido normalmente. O cabeçalho Vary: Accept evita que caches intermediários entreguem a versão errada.
Em servidores Nginx, a lógica equivalente usa o bloco map e try_files na configuração do servidor, e não .htaccess. Se você não administra o servidor, peça ao suporte da hospedagem ou de quem cuida da infraestrutura.
3. Automatize para novos uploads
Conversão manual só resolve o passado. Para uploads novos, use um plugin leve de conversão, um gancho no WordPress ou uma rotina agendada. Sem isso, em um mês você terá imagens novas em JPG de novo.
Este é o método de quem quer que o site passe a usar somente arquivos .webp, sem versões JPG ou PNG. Ele resolve a dependência de regras de servidor, mas é o mais delicado. Use apenas com backup e, de preferência, em staging.
UPDATE ... REPLACE direto no bancoÉ comum encontrar tutoriais que mandam executar comandos SQL como UPDATE postmeta SET meta_value = REPLACE(meta_value, '.jpg', '.webp'). Existem três problemas reais com isso:
| Risco | O que acontece |
|---|---|
| Dados serializados | O WordPress guarda muita coisa como texto serializado, que registra o tamanho de cada string. Trocar .jpg (4 caracteres) por .webp (5) muda o tamanho e corrompe o dado |
| Alcance largo demais | O REPLACE troca qualquer ocorrência de .png ou .jpg, inclusive em textos e links que nada têm a ver com imagem |
| Cobertura incompleta | Alterar só o guid e o postmeta não atualiza as URLs dentro do conteúdo dos posts nem em opções do tema |
O WP-CLI tem um comando próprio, o wp search-replace, que entende dados serializados e ajusta os tamanhos corretamente. É a ferramenta certa para esse trabalho.
1. Converta os arquivos para .webp com o mesmo nome base
find wp-content/uploads -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) \
-exec sh -c 'cwebp -quiet -q 82 "$1" -o "${1%.*}.webp"' _ {} \;
Isso gera foto.webp ao lado de foto.jpg, inclusive para as miniaturas (foto-150x150.webp). Atenção a um caso: se existirem foto.jpg e foto.png na mesma pasta, os dois gerariam foto.webp e um sobrescreveria o outro. Confira antes.
2. Simule a troca das URLs sem gravar nada
wp search-replace 'wp-content/uploads/([^"[:space:]]+)\.(jpe?g|png)' \
'wp-content/uploads/$1.webp' \
--regex --regex-delimiter='#' --all-tables --dry-run
O --dry-run mostra quantas substituições seriam feitas por tabela, sem alterar nada. Analise o resultado. Se estiver coerente, rode o mesmo comando sem essa opção.
3. Atualize o tipo de arquivo registrado na biblioteca de mídia
wp db query "UPDATE wp_posts SET post_mime_type = 'image/webp'
WHERE post_type = 'attachment'
AND post_mime_type IN ('image/jpeg','image/png');"
Troque wp_ pelo prefixo das tabelas do seu site.
4. Regenere os metadados das miniaturas
wp media regenerate --yes
Essa etapa reconstrói a lista de tamanhos de cada imagem com base nos arquivos que realmente existem, o que evita referências a miniaturas inexistentes.
5. Limpe os caches e confira o site
Limpe o cache do plugin, do servidor e da CDN. Depois navegue pelas páginas principais e confira se nenhuma imagem retorna erro 404.
6. Só então remova os originais
Mantenha os JPG e PNG por alguns dias, em backup ou em pasta separada, até ter certeza de que está tudo certo.
Quando uma troca definitiva faz sentido? Em geral, quando o site é novo ou está sendo migrado. Em um site antigo, grande e com muito conteúdo legado, o método 1 costuma ter melhor custo-benefício. Se você vai migrar de qualquer forma, veja também como migrar um site WordPress sem perder SEO.
Algumas CDNs convertem e entregam imagens em formatos modernos automaticamente, sem você mexer nos arquivos. O serviço detecta se o navegador aceita WebP e entrega a versão certa a partir do servidor mais próximo do visitante. Cloudflare, por exemplo, oferece esse tipo de otimização em planos específicos.
Isso é útil para sites com muito tráfego ou com público espalhado geograficamente. Para entender o papel dessas camadas, veja o que é CDN. O ponto de atenção é o custo recorrente e a necessidade de configurar bem as regras de cache, para a CDN não guardar versões erradas.
Não confie só em “parece rápido”. Confirme:
webp.curl -sI -H "Accept: image/webp" https://seusite.com.br/wp-content/uploads/2026/10/foto.jpg | grep -i content-type
Se a entrega estiver correta, a resposta traz content-type: image/webp, mesmo com a URL terminando em .jpg.
Para entender por que o teste de laboratório às vezes não reflete a experiência real, leia a diferença entre site rápido no teste e site rápido de verdade.
| Sintoma | Causa provável e solução |
|---|---|
| Imagens quebradas (erro 404) após a troca | O arquivo .webp não existe no caminho esperado. Confira se a conversão gerou todos os arquivos, inclusive miniaturas, e se não ficaram em subpasta separada |
| O site continua entregando JPG | Cache de plugin, servidor ou CDN. Limpe todos. Em Nginx, confirme que as regras foram aplicadas na configuração do servidor, não só no .htaccess |
| Só algumas imagens viram WebP | Imagens fora da biblioteca de mídia (CSS, sliders, campos personalizados, construtores de página) não são tocadas pela conversão. Revise esses pontos manualmente |
| Miniaturas faltando | Os metadados ficaram desatualizados. Rode a regeneração de miniaturas |
| Imagem de compartilhamento social sem preview | Algumas plataformas e clientes de e-mail lidam mal com WebP. Mantenha JPG ou PNG na imagem og:image e em e-mails |
| Dados de tema ou plugin corrompidos | Normalmente efeito de REPLACE direto no banco em dados serializados. Restaure o backup e refaça com wp search-replace |
| Qualidade visual ruim | Qualidade muito baixa na conversão. Suba de 75 para 82 ou 85 e compare |
alt.Se o seu site é uma loja que vende todos os dias, um site de captação de leads ou tem milhares de imagens, um erro nessa troca significa vendas perdidas e páginas fora do ar. Nesses casos, faz sentido ter alguém para planejar o backup, testar em staging, escolher o método de entrega e validar o resultado.
É exatamente o tipo de trabalho que está dentro da manutenção de sites WordPress e do SEO técnico: diagnosticar o que realmente pesa no site, otimizar imagens, cache e servidor, e medir o resultado antes e depois. Para entender o investimento, veja quanto custa a manutenção de um site WordPress.
Sim. O WordPress aceita o envio de arquivos .webp pela biblioteca de mídia desde a versão 5.8. O que ele não faz, por padrão, é converter todo o seu acervo antigo de JPG e PNG, e é por isso que plugins, scripts ou CDNs entram na história.
Para uso na web, na maioria dos casos sim: o arquivo costuma ser menor com qualidade visual parecida, e o formato cobre fotos, gráficos e transparência. Para impressão, edição profissional ou envio em e-mail marketing, os formatos tradicionais ainda são mais seguros.
Os navegadores modernos, incluindo Chrome, Edge, Firefox e Safari, suportam. Mesmo assim, o ideal é manter um fallback em JPG ou PNG, que é o que plugins e regras de servidor bem configuradas fazem automaticamente.
Não, se for feito corretamente. Imagens mais leves ajudam a velocidade, o que é positivo. O risco está em fazer a troca de forma errada, deixando imagens quebradas, URLs com erro 404 ou textos alternativos perdidos.
Não. Manter os originais é mais seguro, porque permite reverter ou regerar os WebP em outra qualidade. Se a prioridade for espaço em disco, apague apenas depois de validar tudo e de ter backup.
Não é recomendado. Trocar extensões com REPLACE direto no banco pode corromper dados serializados e atingir textos que nada têm a ver com imagem. Prefira wp search-replace, que trata dados serializados, e sempre com --dry-run primeiro.
Um valor entre 75 e 85 costuma equilibrar bem. Teste com algumas imagens importantes, compare lado a lado e ajuste. Fotos de produto, onde o detalhe vende, costumam pedir qualidade um pouco maior.
Imagem é só um dos fatores. Hospedagem, cache, plugins, banco de dados e scripts de terceiros pesam igual ou mais. O caminho é medir, identificar o gargalo real e atacar na ordem de impacto. O artigo otimização de sites mostra como organizar esse diagnóstico.
Substituir imagens JPG e PNG por WebP no WordPress é uma das otimizações com melhor relação entre esforço e resultado. A diferença entre dar certo e dar dor de cabeça está no método: para a maioria dos sites, um plugin que converte e entrega WebP com fallback resolve com segurança. Para quem quer abandonar os formatos antigos de vez, a troca definitiva é possível, mas pede backup, simulação com --dry-run e ferramentas que respeitam dados serializados, em vez de comandos SQL genéricos.
Se você quer fazer isso sem risco para o seu site, ou descobrir o que mais está pesando na velocidade, o caminho é começar por um diagnóstico. Eu cuido disso como desenvolvedor freelancer, do levantamento ao teste final, com o site continuando no ar durante todo o processo.
Google for Developers. “WebP: a new image format for the web”. Documentação oficial do formato, com os comparativos de tamanho em relação a JPEG e PNG.
WordPress.org. “Converter for Media”. Página do plugin citado como exemplo de conversão e entrega automática de WebP e AVIF.
Can I use. “WebP image format”. Tabela de compatibilidade do WebP nos navegadores.
WP-CLI. “wp search-replace”. Documentação do comando que trata dados serializados, com as opções --regex, --regex-delimiter e --dry-run.
web.dev. “Largest Contentful Paint (LCP)”. Explicação da métrica que mais se beneficia de imagens principais mais leves.