Imagens WebP e AVIF no PrestaShop 9: formatos, qualidade e regeneração
O PrestaShop 9 gera imagens em formatos modernos sem módulos extra. Contamos-lhe como o configurar e a armadilha que pode deixar a sua loja em branco.
As imagens são, de longe, o que mais pesa numa loja online. O PrestaShop 9 permite gerar as miniaturas de produto em WebP e AVIF além de JPG, e servi-las com a etiqueta <picture> para que cada navegador escolha o melhor formato que entende.
O que ganha
- WebP: costuma pesar 25–35 % menos do que um JPG de qualidade semelhante. Todos os navegadores atuais o entendem.
- AVIF: ainda mais leve, sobretudo em fotografias, mas mais lento a gerar.
Configuração
Em Design > Definições de Imagem escolhe os formatos a gerar e a qualidade. Internamente fica guardado na configuração PS_IMAGE_FORMAT, por exemplo webp,avif,jpg.
A armadilha: o servidor tem de saber escrever o formato
O PHP gera as imagens com a biblioteca GD (ou Imagick). Se configurar AVIF e a GD do seu servidor não trouxer suporte AVIF, a função imageavif() não existe. O PrestaShop 9 gera na hora as miniaturas que faltam e, ao tentar, o erro interrompe a página: a loja aparece em branco, com código 200 e sem nada nos registos.
Verifique antes de ativar um formato:
php -r 'var_dump(function_exists("imagewebp"), function_exists("imageavif"));'
Regenerar miniaturas
Em Design > Definições de Imagem > Regenerar miniaturas. Em catálogos grandes pode demorar muito e ser interrompido por tempo de execução; nesse caso, regenere-as por tipos (primeiro os produtos) ou com um script de linha de comandos que salte as que já existem.
Qualidade
- JPG: 85–90.
- WebP: 80–85.
- AVIF: 60–75 (a sua escala não é comparável com a do JPG).
E ainda
- Carregue imagens originais de tamanho razoável (2000 px de lado chegam para quase qualquer zoom).
- Defina os tamanhos de imagem que o seu tema usa realmente: cada tamanho extra multiplica o espaço em disco e o tempo de regeneração.
- Ative o carregamento diferido (
loading="lazy") nas listagens, mas não na imagem principal da ficha: essa deve carregar o mais depressa possível.