Imagens originais [tamanho real] de modificação automática

5

Existe uma maneira de fazer com que o WordPress processe imagens em tamanho total, que por padrão não são modificadas?

    
por Dan 13.04.2012 / 10:37

1 resposta

4

Sim, existe.

Encontrado aqui:
enlace

Ele substituirá a imagem original pelo tamanho large , definido em Configurações de mídia ( /wp-admin/options-media.php ).

Este é o código:

add_filter('wp_generate_attachment_metadata','replace_uploaded_image');

function replace_uploaded_image($image_data) 
{
    // if there is no large image : return
    if ( !isset($image_data['sizes']['large']) ) 
        return $image_data;

    // paths to the uploaded image and the large image
    $upload_dir              = wp_upload_dir();
    $uploaded_image_location = $upload_dir['basedir'] . '/' . $image_data['file'];
    $large_image_location    = $upload_dir['path'] . '/' . $image_data['sizes']['large']['file'];

    // delete the uploaded image
    unlink($uploaded_image_location);

    // rename the large image
    rename($large_image_location, $uploaded_image_location);

    // update image metadata and return them
    $image_data['width']  = $image_data['sizes']['large']['width'];
    $image_data['height'] = $image_data['sizes']['large']['height'];
    unset($image_data['sizes']['large']);

    return $image_data;
}

É possível usá-lo com um tamanho personalizado:

add_image_size( 'new-large', 1600, 1200 ); 

Alterando todas as ocorrências de $image_data['sizes']['large'] no código original com $image_data['sizes']['new-large']

    
por brasofilo 03.06.2012 / 02:02

Tags