Atualização do Documento com Imagens de Alta Resolução

Olá!

Tenho uma coleção de mapas que como documento principal tinha uma imagem pequena de cada mapa. Inclusive verifiquei que os thumbnails dessas imagens haviam sido criadas na importação inicial.

Agora decidiu-se disponibilizar as imagens em alta resolução em jpg, ou seja, arquivos bem grandes, na média de 20MB, chegando até 50MB em vários casos.

Quando fiz a importação via CSV substituindo o documento principal, os thumbnails não foram criados!!! Assim na exibição de itens, por exemplo, se eu estiver vendo 24 imagens, tenho um sério problema de tamanho de arquivos, pois o tainacan está puxando o arquivo principal para exibição e não um thumbnail. Fica lento pro usuário, e custoso para o servidor.

Na pasta do item no servidor observo apenas o arquivo principal. Não há mais as imagens terminadas por -125x125.jpg ou -150x150.jpg, por exemplo.

Em muitos casos, haverá imagens de alta resolução nos attachments também.

Alguma forma de gerar esses thumbnails?

Obrigado!

Bom dia

Incomum isso, os tamanhos deveriam ser gerados, algumas questões para tentar entender melhor o caso: Existe algum log de erro no servidor? Imagens menores estão gerando as miniaturas? no system check do Tainacan todos os módulos estão instalados?

Abraços

Olá! Retomando…

Sobre o system check está tudo ok.

Fiz umas pesquisas que sugeriam aumentar o memory_limit do php e aumentei pra 1GB, mas esse teste não surtiu efeito.

Depois vi que existe um limite da borda maior para geração das imagens menores thumbnails, que o pessoal chama de big image threshold. Eu entendi que por padrão o valor é 2560pixels, e imagens maiores teriam seus thumbnails criados, mas não tive certeza. Até me parece que é o contrário pela experiência que estou tendo.

Então criei um plugin em /wp-content/mu-plugins, e chamei de bigimage.php. Neste aumento o valor do threshold:

<?php

# altera o tamanho da imagem para gerar os thumbnails

function custom_image_threshold( $threshold ) {
   return 100000; // new threshold (neste caso 100 mil pixels)
}
add_filter('big_image_size_threshold', 'custom_image_threshold', 999, 1);

Após isto, ao enviar uma imagem de 8MB, foram criados dois thumbnails apenas (antes nenhum era criado):

-rw-r--r--    1 www-data www-data 8.7K Dec 15 15:46 ZM997-8MB-205x296.jpg
-rw-r--r--    1 www-data www-data 8.8K Dec 15 15:46 ZM997-8MB-208x300.jpg
-rw-r--r--    1 www-data www-data 8.2M Dec 15 15:46 ZM997-8MB.jpg

Enquanto para arquivos menores, outros tamanhos são criados:

-rw-r--r--    1 www-data www-data 177K Dec 15 15:45 ZM997-4MB-1064x1536.jpg
-rw-r--r--    1 www-data www-data 8.9K Dec 15 15:45 ZM997-4MB-205x296.jpg
-rw-r--r--    1 www-data www-data 9.0K Dec 15 15:45 ZM997-4MB-208x300.jpg
-rw-r--r--    1 www-data www-data  83K Dec 15 15:45 ZM997-4MB-710x1024.jpg
-rw-r--r--    1 www-data www-data  96K Dec 15 15:45 ZM997-4MB-768x1108.jpg
-rw-r--r--    1 www-data www-data 4.0M Dec 15 15:45 ZM997-4MB.jpg

Por fim, no carrossel, a imagem que tem 8MB é carregada, a original, devido ao tamanho da tela. Já com a imagem menor, no caso de 4MB, ou até menores, carrega-se o thumbnail adequado ao tamanho da tela:

Teste com 8MB ou maior

<img width="9449" height="13635" src="https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-8MB.jpg" class="attachment-0 size-0" alt="" loading="lazy" srcset="https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-8MB.jpg 9449w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-8MB-208x300.jpg 208w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-8MB-205x296.jpg 205w" sizes="(max-width: 9449px) 100vw, 9449px">

Teste com 4MB:

<img width="7748" height="11181" src="https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB.jpg" class="attachment-0 size-0" alt="" loading="lazy" srcset="https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB.jpg 7748w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB-208x300.jpg 208w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB-710x1024.jpg 710w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB-768x1108.jpg 768w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB-1064x1536.jpg 1064w, https://colecoes.igc.usp.br/wp-content/uploads/tainacan-items/30522/63233/ZM997-4MB-205x296.jpg 205w" sizes="(max-width: 7748px) 100vw, 7748px">

Por isso, a página continua pesada ao abrir estas imagens de alta resolução. O esperado seria na visualização no carrossel (e até na visualização geral dos itens) termos os thumbnails leves, e quando o interessado clicasse no carrossel para visualizar ou fazer o download, aí sim viria a imagem de alta resolução.

Alguma dica?