Redimension thumbnail crop sem criar novas imagens

Estou trabalhando no meu tema e consegui replace as opções de miniaturas padrão usando este código:

update_option( 'thumbnail_size_w', 320 ); update_option( 'thumbnail_size_h', 180 ); 

Enquanto as miniaturas estão agora adequadamente dimensionadas, as vezes elas não parecem muito agradáveis, pois simplesmente colhem do meio.

Como tal, eu gostaria de poder fazer culturas personalizadas quando isso acontecer. Para fazer isso, eu vou em Media> Biblioteca> Clique em “Editar” abaixo de uma imagem> Editar imagem

Lá, eu tenho um painel que me permite recortar a imagem como eu quero clicando na opção Aplicar alterações à miniatura.

No entanto, existem algumas questões …

Primeiro, ele cria uma nova imagem ao invés de replace o antigo, isso quase desperdiça o espaço em disco desnecessariamente. Não só isso, uma vez que o arquivo é totalmente novo, parece que a imagem não é atualizada na página (ele aponta para o mesmo nome de arquivo que antes).

Este é o código que eu uso para exibir a imagem:

 the_post_thumbnail('thumbnail', ['class' => 'featured-post-image']); 

Em segundo lugar, às vezes eu simplesmente não consigo obter uma boa colheita da imagem porque é muito grande. Então reduzo-o para aplicar a safra posteriormente. No entanto, assim que eu reduzi-lo, parece criar um novo arquivo novamente e a biblioteca agora aponta para esta nova imagem. A imagem antiga ainda está na pasta e prefiro não criar uma nova imagem a partir desta escala para baixo e manter a imagem padrão como está.

Então, eu gostaria de saber se isso pode ser feito e se isso não é muito complexo para fazer através da codificação, eu preferiria fazer isso do que adicionar plugins.

Solutions Collecting From Web of "Redimension thumbnail crop sem criar novas imagens"

A resposta é não gerar mais dimensões da imagem (e o seu tema substituindo as configurações do usuário é grande, não, não), mas selecionar o tamanho da imagem melhor ajustável e aplicar o alongamento e o corte baseados em css, envolvendo o elemento img com uma span .

Para o img você usa o que for de melhor forma e, em seguida, usando uma combinação de posicionamento relativo no span e alterando o tamanho da imagem, você pode obter o efeito desejado.

Esta é realmente apenas uma técnica de “porta de exibição” que é tão antiga quanto CSS, a única parte específica de wordpress é passar para os tamanhos que você deseja para the_post_thumbnail como o primeiro parâmetro.

O que é obtido com isso é que, obviamente, se o wordpress lhe der uma imagem recortada, você não pode “uncrop”, e você terá que adicionar sua própria configuração de tamanho de imagem para isso.