Num ecossistema digital cada vez mais competitivo, a performance de um site em WordPress – especialmente com WooCommerce – pode ser o fator decisivo entre conversões e abandono.
Um dos problemas mais ignorados? A gestão automática de tamanhos de imagem.
A maioria dos projetos acumula variações desnecessárias sem qualquer controlo técnico, prejudicando SEO e performance.
Sempre que carregas uma imagem, o WordPress gera múltiplos tamanhos automaticamente. Além dos nativos (thumbnail, medium, large), temas e plugins – incluindo WooCommerce – adicionam novos tamanhos via add_image_size. O resultado? Um crescimento exponencial de ficheiros e pedidos HTTP.
Para resolver isto, podemos começar por auditar todos os tamanhos registados no sistema. O snippet abaixo mostra como listar esses tamanhos no admin usando um hook moderno:
add_action('admin_init', function () {
add_settings_field(
'custom_image_sizes',
'Image Sizes Registados',
'render_image_sizes_field',
'media'
);
});
function render_image_sizes_field()
{
global $_wp_additional_image_sizes;
$sizes = get_intermediate_image_sizes();
echo '<ul>';
foreach ($sizes as $size) {
if (in_array($size, ['thumbnail', 'medium', 'large'])) {
$width = get_option("{$size}_size_w");
$height = get_option("{$size}_size_h");
} else {
$width = $_wp_additional_image_sizes[$size]['width'] ?? 'auto';
$height = $_wp_additional_image_sizes[$size]['height'] ?? 'auto';
}
echo "<li><strong>{$size}</strong>: {$width}x{$height}</li>";
}
echo '</ul>';
}
Este bloco cria uma interface direta no backend (Settings > Media) que permite visualizar todos os tamanhos ativos – uma ferramenta essencial para auditoria técnica.
Mas visualizar não chega. O verdadeiro ganho vem do controlo granular. Podemos impedir a geração de tamanhos desnecessários usando o poderoso filtro intermediate_image_sizes_advanced:
add_filter('intermediate_image_sizes_advanced', function ($sizes) {
$blacklist = get_option('disabled_image_sizes', []);
foreach ($blacklist as $size) {
unset($sizes[$size]);
}
return $sizes;
});
Com este snippet, passamos a ter controlo total sobre quais tamanhos são realmente gerados – reduzindo consumo de disco e melhorando performance.
Para tornar isto utilizável por clientes (e não apenas developers), podemos adicionar uma UI interativa com jQuery e AJAX:
jQuery(document).ready(function ($) {
$('.toggle-size').on('click', function () {
const size = $(this).data('size'); $.post(ajaxurl, {
action: 'toggle_image_size',
size: size,
_ajax_nonce: my_nonce
}, function (response) {
alert('Estado atualizado com sucesso!');
});
});
});
E o handler PHP correspondente:
add_action('wp_ajax_toggle_image_size', function () {
check_admin_referer('toggle_size_nonce');
$size = sanitize_text_field($_POST['size']);
$disabled = get_option('disabled_image_sizes', []);
if (in_array($size, $disabled)) {
$disabled = array_diff($disabled, [$size]);
} else {
$disabled[] = $size;
}
update_option('disabled_image_sizes', $disabled);
wp_send_json_success();
});
Este tipo de integração transforma uma solução técnica numa ferramenta prática e comercializável – ideal para dashboards personalizados em WooCommerce.
Num contexto de e-commerce, isto é crítico. Cada produto pode gerar dezenas de imagens derivadas (thumbnails, galerias, variações). Sem controlo, o impacto em Core Web Vitals (LCP, CLS) é significativo – e o Google penaliza.
Além disso, ao aplicar boas práticas como check_admin_referer, sanitize_text_field e nonces, garantimos que o código é seguro, robusto e pronto para produção – algo que distingue soluções profissionais de scripts improvisados.
Do ponto de vista de SEO moderno, esta abordagem melhora diretamente:
- Tempo de carregamento;
- PageSpeed Score;
- Eficiência de crawling;
- Experiência do utilizador.
Ou seja: mais tráfego, mais conversões, mais receita.
Para empresas que dependem de WordPress e WooCommerce, este tipo de otimização não é opcional – é estratégico. E mais importante: é altamente personalizável via plugins dedicados.
Se precisa de desenvolver plugins à medida, otimizar performance ou criar soluções avançadas com hooks, APIs e integração total no WordPress, então está na altura de investir em desenvolvimento sério.

