Redimensionar apenas imagens em destaque durante o upload

4

Eu estava fazendo um backup da minha pasta wp-content. Mas quando notei o tamanho da pasta de uploads. Fiquei espantado e cada imagem usada no meu blog tinha 5 cópias com tamanhos diferentes nessa pasta. Todos estes totalizaram 7 GB em 2 meses. Desta forma, não demorará muito para preencher um armazenamento no servidor. Eu tenho muitos posts na galeria de imagens. Eu não sabia disso que cada imagem no wordpress é redimensionada e mantida em tamanhos diferentes e pensei que apenas as imagens em destaque passaram por redimensionamento.

Existe uma maneira de o wordpress apenas redimensionar imagens em destaque?

    
por busyjax 14.07.2013 / 14:33

1 resposta

3

Você pode simplesmente definir todos os atributos de tamanho de imagem não utilizados como 0 para impedir que o WordPress os gere. Embora isso se aplique apenas aos tamanhos de imagem padrão, você pode usar filtros para removê-los.

Em geral, o WP armazena todos esses tamanhos para gerar imagens no global $_wp_additional_image_sizes . O plugin a seguir usa um filtro para remover os tamanhos na hora. Veja os pontos de depuração para unset / export / etc. os diferentes tamanhos. Você obterá rapidamente uma visão geral e poderá remover o que não precisa.

<?php
defined( 'ABSPATH' ) or exit;
/* Plugin Name: Disable Image Sizes */

add_filter( 'intermediate_image_sizes_advanced', 'wpse_106463_filter_image_sizes' );
function wpse_106463_filter_image_sizes( $sizes )
{
    // Uncomment the following line to see your image sizes:
    # printf( '<pre>%s</pre>', htmlspecialchars( var_export( $GLOBALS['_wp_additional_image_sizes'], true ) ) );

    // Unset default image sizes: Simply uncomment the line
    # unset( $sizes['thumbnail'] );
    # unset( $sizes['medium'] );
    # unset( $sizes['large'] );

    return $sizes;
}

E para adicionar tamanhos personalizados ao seu seletor de tamanho na interface de administração, basta usar o seguinte:

add_filter( 'image_size_names_choose', 'wpse_106463_image_size_select' );
function wpse_106463_image_size_select( $sizes )
{
       return $sizes + array(
              'custom_size_name' => 'Avatar Size',
              'full'             => 'Original size'
       );
}
    
por kaiser 14.07.2013 / 15:20