Dominar performance WooCommerce: tuning de base de dados, cache Redis, correção de cart fragments, otimização de imagens é arquitetura headless. Passos práticos.
PT-PT

Otimização de Performance WooCommerce: O guia completo 2026

5.00 /5 - (20 votes )
Última verificação: 1 de maio de 2026
16min de leitura
Guia
500+ projetos WP
Especialista WooCommerce

Um segundo dé atraso no tempo de carregamento custa a uma loja de e-commerce média 7% em conversões. Para uma loja WooCommerce que gera 50 000 EUR mensais, isso traduz-se em 3 500 EUR perdidos todos os meses - 42 000 EUR por ano que evaporam porqué as páginas carregam demasiado lentamente.

A otimização de performance WooCommerce não é um luxo. Determina diretamente quanta receita a sua loja gera, ondé o Google posiciona as suas páginas de produto e sé os visitantes completam as compras ou abandonam os carrinhos por frustração. Este guia abrange cada camada dé otimização, desde consultas à base de dados até arquitetura headless, com resultados mensuráveis em cada etapa.

#Porque é qué a performance WooCommerce importa mais do que nunca

Os Core Web Vitals do Google são agora um sinal de classificação confirmado, é as lojas de e-commerce enfrentam o escrutínio mais rigoroso. Páginas de produtos com LCP acima de 2,5 segundos, mudanças de layout causadas por imagens de produtos com carregamento adiado ou interações lentas devido a JavaScript pesado - tudo isto desencadeia penalizações de classificação em nichos competitivos.

Para além do SEO, o impacto no negócio é contundente:

  • Taxas de conversão caem 4,42% por cada segundo adicional de carregamento
  • Taxas de rejeição aumentam 32% quando o tempo de carregamento passa de 1 para 3 segundos
  • Abandono de carrinho correlaciona diretamente com a velocidade da página de checkout - 53% dos útilizadores móveis saem sé a página demora mais de 3 segundos
  • Valor médio de encomenda diminui com a diminuição da velocidade da página, porque lojas lentas não transmitem confiança

O efeito cumulativo é o que mais conta. Uma loja que carrega em 1,5 segundos em vez de 4,5 segundos não converté apenas 10% melhor - posiciona-se mais alto, atrai mais tráfego orgânico, converte mais desse tráfego e gera valores de encomenda mais elevados. A diferença acumulada de receita podé atingir 30-50% ao longo dé um ano.

#A stack de performance WooCommerce: compreender as camadas

Cada pedido de página WooCommerce passa por múltiplas camadas, cada uma adicionando latência:

  1. Resolução DNS → 50-150ms (escolha de CDN e fornecedor DNS)
  2. Handshake TLS → 50-100ms (configuração HTTP/2, TLS 1.3)
  3. Processamento do servidor → 200-2000ms (PHP, base de dados, WordPress, WooCommerce)
  4. Transferência de rede → 100-500ms (peso da página, compressão, CDN)
  5. Renderização do navegador → 200-1000ms (CSS, JavaScript, imagens, fontes)

O processamento do servidor é ondé as lojas WooCommerce perdem mais tempo. Uma página de produto WooCommerce típica não otimizada executa 300-800 consultas à base de dados, carrega 30-50 ficheiros PHP e executa dezenas de hooks de plugins - tudo antes dé um único byte chegar ao navegador do visitante.

#Otimização da base de dados: o alicerce

#Otimização de consultas

O WooCommercé armazena dados de produtos em múltiplas tabelas: wp_posts, wp_postmeta, wp_terms, wp_term_relationships e tabelas de pesquisa específicas do WooCommerce. A tabela wp_postmeta é o principal estrangulamento - uma loja com 5000 produtos acumula fácilmente mais de 500 000 linhas em postmeta.

Índices críticos a adicionar:

ALTER TABLE wp_postmeta ADD INDEX meta_value_index (meta_value(50));
ALTER TABLE wp_postmeta ADD INDEX compound_index (meta_key, meta_value(50));
ALTER TABLE wp_wc_product_meta_lookup ADD INDEX price_stock (min_price, stock_status);

Estes índices por si só podem reduzir os tempos de consulta de listagem de produtos de 200-500ms para 10-30ms.

#Limpeza de transients e dados autoloaded

O WooCommerce gera milhares de transients para dados de produtos, sessões de carrinho e caches de API. Transients expirados acumulam-se e incham a tabela wp_options.

-- Contar transients expirados
SELECT COUNT(*) FROM wp_options
WHERE option_name LIKE '_transient_timeout_%'
AND option_value < UNIX_TIMESTAMP();

-- Limpar transients expirados
DELETE a, b FROM wp_options a, wp_options b
WHERE a.option_name LIKE '_transient_%'
AND a.option_name NOT LIKE '_transient_timeout_%'
AND b.option_name = CONCAT('_transient_timeout_', SUBSTRING(a.option_name, 12))
AND b.option_value < UNIX_TIMESTAMP();

Opções autoloaded são outro assassino silencioso. O WordPress carrega todas as opções autoloaded em cada pedido de página. O WooCommerce é os seus plugins frequentemente fazem autoload de megabytes de dados serializados:

-- Verificar tamanho dos dados autoloaded
SELECT SUM(LENGTH(option_value)) as autoload_size
FROM wp_options WHERE autoload = 'yes';

Sé os dados autoloaded excederem 1MB, faça uma auditoria e defina opções grandes e pouco útilizadas para autoload = 'no'.

#Gestão de sessões WooCommerce

O WooCommercé armazena sessões de clientes na base de dados por defeito. Lojas com tráfego elevado podem acumular milhares de linhas de sessão, criando contenção de bloqueios duranté o checkout:

-- Verificar tamanho da tabela de sessões
SELECT COUNT(*) FROM wp_woocommerce_sessions;

-- Limpar sessões expiradas
DELETE FROM wp_woocommerce_sessions
WHERE session_expiry < UNIX_TIMESTAMP();

Para lojas com mais de 100 útilizadores simultâneos, mova as sessões para Redis para acesso concorrente sem bloqueios.

#Otimização de imagens para catálogos de produtos

As imagens de produtos são tipicamenté o maior elemento nas páginas WooCommerce é o elemento LCP (Largest Contentful Paint) principal. A sua otimização proporciona a melhoria de performance mais visível para os visitantes.

#Seleção de formato: AVIF vs. WebP vs. JPEG

FormatoTamanho (base JPEG 500KB)Suporte de navegadoresQualidade
JPEG500KB100%Base
WebP175KB (-65%)97%Equivalente
AVIF125KB (-75%)93%Superior

Use AVIF como formato primário com fallback para WebP e JPEG como fallback final:

<picture>
  <source srcset="produto.avif" type="image/avif">
  <source srcset="produto.webp" type="image/webp">
  <img src="produto.jpg" alt="Nome do produto" width="800" height="800" loading="lazy">
</picture>

#Dimensões de imagens de produtos e lazy loading

Cada imagem de produto deve ter atributos width e height explícitos para prevenir Cumulative Layout Shift (CLS). A primeira linha visível de produtos (tipicamente 3-4 imagens) deve carregar com prioridade:

add_filter('wp_get_attachment_image_attributes', function($attr, $attachment, $size) {
    if (is_shop() || is_product_category()) {
        global $wp_query;
        if ($wp_query->current_post >= 4) {
            $attr['loading'] = 'lazy';
            $attr['decoding'] = 'async';
        } else {
            $attr['loading'] = 'eager';
            $attr['fetchpriority'] = 'high';
        }
    }
    return $attr;
}, 10, 3);

#Estratégias de caching: a abordagem de três camadas

#Camada 1: Object cache com Redis

Redis object cache é a otimização de servidor mais impactante para WooCommerce. Armazena resultados de consultas à base de dados, valores calculados e dados de produtos WooCommerce em memória.

Medição de impacto de lojas reais:

MétricaSem RedisCom RedisMelhoria
Consultas DB por página280-50030-60-80%
TTFB (sem cache)600-1200ms150-300ms-75%
Uso de memória PHP64-128MB32-64MB-50%
Carga CPU do servidorAltaBaixa-60%

Configuração Redis para WooCommerce:

// wp-config.php
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_DATABASE', 0);
define('WP_REDIS_MAXTTL', 86400);
define('WP_REDIS_PREFIX', 'woo_');

define('WP_REDIS_IGNORED_GROUPS', ['counts', 'plugins']);

Monitorizé as taxas dé acerto do Redis - um cache Redis WooCommerce saudável mostra 85-95% de hit rate. Abaixo de 70% indica fragmentação de chaves de caché ou TTL demasiado curto.

#Camada 2: Full page cache

Full page caching armazena o HTML completamente renderizado das páginas, contornando PHP e base de dados completamente para visitantes em cache - tipicamente 20-50ms de TTFB.

Regras de exclusão críticas para WooCommerce:

  • /carrinho/ - Sempre dinâmico
  • /finalizar-compra/ - Sempre dinâmico
  • /minha-conta/ - Sempre dinâmico
  • Qualquer URL com cookie woocommerce_items_in_cart definido
  • Pedidos POST
  • URLs com parâmetros add-to-cart, removed_item, undo_item

#Camada 3: Fragment cache

Fragment caching armazena componentes individuais de página que são dispendiosos de gerar mas partilhados entre páginas - menus de navegação, widgets de rodapé, árvores de categorias e contadores de filtros de produtos.

function get_cached_category_tree() {
    $cache_key = 'woo_category_tree_' . get_locale();
    $cached = wp_cache_get($cache_key, 'woo_fragments');

    if (false !== $cached) {
        return $cached;
    }

    $categories = get_terms([
        'taxonomy' => 'product_cat',
        'hide_empty' => true,
        'orderby' => 'count',
        'order' => 'DESC',
    ]);

    $output = render_category_tree($categories);
    wp_cache_set($cache_key, $output, 'woo_fragments', 3600);

    return $output;
}

#Cart Fragments AJAX: o assassino de performance número um

WooCommerce cart fragments é uma funcionalidade JavaScript qué atualiza o widget de mini-carrinho em cada página. Dispara um pedido AJAX não cacheável (?wc-ajax=get_refreshed_fragments) em cada carregamento de página - mesmo quando o carrinho está vazio, mesmo em páginas sem widget de carrinho.

O impacto é devastador:

  • Adiciona 0,5-2 segundos a cada carregamento de página não em cache
  • Contorna o page cache (cada pedido AJAX atinge PHP/base de dados)
  • Envia 20-50KB de HTML no corpo da resposta
  • Bloqueia a thread principal duranté o parsing e injeção de HTML
  • Desencadeia mudanças de layout quando o widget de carrinho atualiza

#A correção: desativar cart fragments em páginas sem carrinho

add_action('wp_enqueue_scripts', function() {
    if (!is_cart() && !is_checkout()) {
        wp_dequeue_script('wc-cart-fragments');
    }
}, 99);

Para lojas que precisam dé um contador de carrinho ao vivo no cabeçalho, substitua os pesados cart fragments por uma chamada REST API leve:

// Contador de carrinho leve - substitui os pesados cart fragments
async function updateCartCount() {
    try {
        const response = await fetch('/wp-json/wc/store/v1/cart', {
            credentials: 'same-origin'
        });
        const cart = await response.json();
        document.querySelector('.cart-count').textContent = cart.items_count;
    } catch (e) {
        // Falha silenciosa - o contador de carrinho simplesmente não atualiza
    }
}

document.addEventListener('added_to_cart', updateCartCount);

Está única otimização melhora frequentementé as pontuações de PageSpeed móvel em 15-25 pontos.

#Otimização do fluxo de checkout

A página de checkout é ondé a receita efetivamenté acontece, e é frequentementé a página mais lenta numa loja WooCommerce. Cada 100ms dé atraso na página de checkout aumenta mensuravelmenté o abandono de carrinho.

#Reduzir o peso da página de checkout

Audité os scripts carregados na página de checkout. Culpados comuns:

  • Pixels de marketing (Facebook, Google Ads, TikTok) - Adiar para requestIdleCallback
  • Widgets de chat ao vivo - Carregar apenas após interação do útilizador
  • Scripts dé analytics - Usar alternativas leves ou adiar
  • CSS/JS de plugins - Muitos plugins carregam em todas as páginas incluindo checkout
add_action('wp_enqueue_scripts', function() {
    if (is_checkout()) {
        wp_dequeue_script('contact-form-7');
        wp_dequeue_style('contact-form-7');
        wp_dequeue_script('slider-plugin');
        wp_dequeue_style('slider-plugin');
    }
});

#Auditoria de plugins: quais plugins mais atrasam o WooCommerce

Nem todos os plugins custam o mesmo em termos de performance. Aqui estão os culpados mais comuns baseados em auditorias reais de lojas:

Categoria de pluginImpacto típicoAbordagem alternativa
Construtores de páginas visuais+2-5s TTFB, +500KB-2MB JSEditor de blocos ou tema personalizado
Botões de partilha social+300-800ms, 10-20 pedidos ext.Ícones SVG estáticos com URLs de partilha
Plugins de produtos relacionados+200-500ms, 10-50 consultas extraConsulta personalizada com object cache
Plugins SEO (pesados)+100-300ms, overhead adminSEO leve (Slim SEO)
Addons WooCommerce+100-500ms por addonAuditoria, consolidar, cache
Analytics/tracking+200-1000ms, bloqueio de renderingTracking server-sidé ou GTM

O processo dé auditoria de plugins:

  1. Instalar Query Monitor é ativar o profiling de consultas à base de dados
  2. Carregar uma página de produto, listagem de produtos e página de checkout
  3. Ordenar consultas por tempo - identificar quais plugins geram as consultas mais lentas
  4. Desativar plugins um de cada vez, medindo o impacto no TTFB e total de consultas
  5. Substituir plugins dispendiosos por alternativas leves ou código personalizado

#Configuração do servidor: PHP, OPcache e MariaDB

#PHP workers e configuração

O WooCommerce é intensivo em PHP. Cada visitante simultâneo requer um PHP worker:

; Otimizações php.ini para WooCommerce
memory_limit = 256M
max_execution_time = 30
max_input_vars = 5000

; OPcache - crítico para WooCommerce
opcache.enable = 1
opcache.memory_consumption = 256
opcache.max_accelerated_files = 20000
opcache.validate_timestamps = 0
opcache.revalidate_freq = 0
opcache.interned_strings_buffer = 16
opcache.jit = tracing
opcache.jit_buffer_size = 64M

Fórmula de PHP workers: Para WooCommerce, aloque 1 PHP worker por 2-3 visitantes simultâneos. Uma loja com 50 visitantes simultâneos precisa de 15-25 workers PHP-FPM:

pm = dynamic
pm.max_children = 25
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 15
pm.max_requests = 500

#OPcache: o boost de performance gratuito

O OPcaché armazena bytecode PHP compilado em memória partilhada. Para WooCommerce, que carrega mais de 500 ficheiros PHP por pedido, o OPcache reduz tipicamenté o tempo de processamento PHP em 40-60%.

Com PHP 8.1+ JIT (compilação Just-In-Time), as operações core do WooCommercé obtêm uma melhoria adicional de 10-20%.

#Tuning MariaDB/MySQL

[mysqld]
innodb_buffer_pool_size = 2G
innodb_buffer_pool_instances = 4
query_cache_type = 0
query_cache_size = 0
max_connections = 150
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
tmp_table_size = 64M
max_heap_table_size = 64M

O innodb_buffer_pool_size é a configuração mais importante. Determina quanto da sua base de dados cabe em RAM. Quando o buffer pool é suficientemente grande, as leituras da base de dados vêm da memória em vez do disco - uma diferença de velocidade de 100x.

#Headless WooCommerce: a solução de performance definitiva

Quando a otimização tradicional atingé os seus limites (tipicamente PageSpeed 70-85 em dispositivos móveis), a arquitetura headless ultrapassa esse teto.

Headless WooCommerce mantém o painel dé administração WooCommerce para gestão de produtos, encomendas e inventário. O frontend orientado ao cliente é reconstruído com um framework moderno - Astro para lojas focadas em conteúdo estático, Next.js para lojas altamente dinâmicas.

#Comparação de performance: tradicional vs. headless

MétricaTradicional (otimizado)Headless com AstroMelhoria
PageSpeed móvel70-8595-100+15-30 pontos
TTFB200-400ms20-50ms-80-95%
LCP2,0-3,5s0,8-1,5s-50-75%
JS total300-800KB20-80KB-90%
Peso da página1,5-4MB200-600KB-75-85%
CLS0,05-0,250Eliminado

#Quando o headless faz sentido

Headless WooCommerce é a escolha certa quando:

  • A sua loja tem 1000+ visitantes diários é a performance impacta diretamenté a receita
  • Core Web Vitals são um fator de classificação competitivo no seu nicho
  • A otimização tradicional atingiu um patamar em PageSpeed 70-85
  • Precisa dé uma experiência de compra altamente personalizada (configuradores, 3D, AR)
  • Comércio multicanal requer a mesma API para web, móvel e quiosques

Para lojas mais pequenas, o investimento em desenvolvimento headless frequentemente supera os ganhos de performance. Concentre-se primeiro nas estratégias dé otimização tradicionais - entregam 80% dos resultados por 20% do esforço.

Leia o nosso guia detalhado sobre headless WooCommerce com Astro para a arquitetura completa e percurso de implementação.

#Antes/depois: resultados reais dé otimização WooCommerce

Estes resultados provêm dé otimizações reais de lojas WooCommerce realizadas pela nossa equipa:

MétricaAntes da otimizaçãoDepois (tradicional)Depois (headless)
PageSpeed móvel287898
TTFB1800ms280ms35ms
LCP6,2s2,1s1,0s
CLS0,320,020
INP450ms120ms45ms
Peso da página4,8MB1,2MB380KB
Consultas DB/página680450 (estática)
Taxa de conversão1,2%2,8%3,9%
Receita mensal42 000 EUR98 000 EUR136 500 EUR

O caminho dé otimização tradicional (Redis, tuning de base de dados, otimização de imagens, correção de cart fragments) proporcionou um aumento de receita de 133%. A migração headless adicionou mais 39% por cima disso.

#Checklist de Core Web Vitals para WooCommerce

#Largest Contentful Paint (LCP) - Alvo: abaixo de 2,5s

  • Pré-carregar a imagem principal do produto nas páginas de produto
  • Usar AVIF com fallback WebP para todas as imagens de produtos
  • Configurar CDN para entrega de imagens com edge caching
  • Garantir qué a imagem LCP não está com lazy loading
  • Remover CSS e JavaScript bloqueadores de rendering above-the-fold
  • Definir fetchpriority="high" na imagem principal do produto

#Cumulative Layout Shift (CLS) - Alvo: 0

  • Definir width e height explícitos em todas as imagens de produtos
  • Reservar espaço para galerias de imagens de produtos antes de carregarem
  • Prevenir mudanças de layout de cart fragments carregados tardiamente
  • Usar font-display: swap com fontes de fallback ajustadas em tamanho

#Interaction to Next Paint (INP) - Alvo: abaixo de 200ms

  • Adiar JavaScript não crítico para requestIdleCallback
  • Dividir tarefas longas no JavaScript de filtros de produtos
  • Usar content-visibility: auto para grelhas de produtos fora do ecrã
  • Minimizar trabalho da thread principal de scripts dé analytics e tracking

#Monitorização é otimização contínua

A otimização de performance não é um projeto único. As lojas WooCommerce mudam constantemente - novos produtos, novos plugins, atualizações de tema, picos de tráfego:

  1. Configurar Real User Monitoring (RUM) - Acompanhar Core Web Vitals de sessões reais de visitantes
  2. Automatizar testes PageSpeed - Executar testes Lighthouse diários em páginas-chave
  3. Monitorizar taxas dé acerto do Redis - Alertar quando a taxa cai abaixo de 80%
  4. Acompanhar contagem de consultas à base de dados - Alertar quando as consultas por página excedem a base em 20%
  5. Rever atualizações de plugins - Testar atualizações em staging primeiro

#Próximos passos

A otimização de performance WooCommerce é um processo em camadas. Comece com as alterações de maior impacto - Redis object cache, correção de cart fragments é otimização de imagens - e depois avance progressivamente para tuning de base de dados, configuração de servidor é otimizações de frontend.

Para lojas ondé a performance é uma vantagem competitiva crítica, a arquitetura headless WooCommerce entrega resultados qué a otimização tradicional simplesmente não consegue igualar.

Precisa dé otimização profissional WooCommerce? A nossa equipa otimizou centenas de lojas WooCommerce, desde pequenos catálogos de produtos até operações enterprise com mais de 50 000 SKUs. Contacte-nos para uma auditoria de performance e descubra exatamenté o que está a atrasar a sua loja e como corrigir.

Também oferecemos serviços abrangentes de otimização de velocidade WordPress que cobrem toda a stack - servidor, base de dados, aplicação e frontend.

Próximo passo

Transforme o artigo numa implementação real

Este bloco reforça a ligação interna e conduz o leitor para o passo seguinte mais útil dentro da arquitetura do site.

Cluster relacionado

Explorar outros serviços WordPress e base de conhecimento

Reforce o seu negócio com suporte técnico profissional em áreas-chave do ecossistema WordPress.

Porque é qué a minha loja WooCommerce é tão lenta?
As causas mais comuns são: WooCommerce cart fragments AJAX a carregar em cada página (adiciona 0,5-2s), sem object cache (Redis/Memcached) causando consultas repetidas à base de dados, imagens de produtos não otimizadas, demasiados plugins com scripts de frontend é alojamento partilhado com PHP workers insuficientes. Comece pelo profiling com Query Monitor.
Como desativo os WooCommerce cart fragments?
Remova o script de cart fragments em páginas sem carrinho usando wp_dequeue_script('wc-cart-fragments') ligado a wp_enqueue_scripts com verificação condicional. Está única alteração melhora frequentementé o PageSpeed em 15-25 pontos.
Valé a pena Redis para WooCommerce?
Redis object cache é a otimização de servidor mais impactante para WooCommerce. Guarda os resultados de consultas em memória, reduzindo o número de consultas de 200-500 por página para 20-50. Melhoria típica de TTFB: 60-80%. Redis requer acesso ao servidor e custa cerca de 5-15 EUR/mês em alojamento gerido.
Que resultados de Core Web Vitals devé uma loja WooCommercé alcançar?
Valores-alvo: LCP abaixo de 2,5s, CLS igual a 0, INP abaixo de 200ms. Uma loja WooCommerce tradicional bem otimizada pontua 70-85 no PageSpeed móvel. Headless WooCommerce com Astro pontua consistentemente 95-100.
Devo mudar para headless WooCommerce por causa da performance?
Headless WooCommerce entrega a melhor performance possível (PageSpeed 95-100), mas requer investimento significativo em desenvolvimento. Faz sentido para lojas com 1000+ visitantes diários, taxas altas dé abandono de carrinho ou nichos competitivos onde Core Web Vitals afetam os rankings.

Precisa de FAQ adaptado ao setor e mercado? Criamos uma versão alinhada com os seus objetivos de negócio.

Fale connosco

Artigos Relacionados

O Cloudflare Workers executa JavaScript e WebAssembly em centenas de centros de dados em mais de 100 países. Combinar Workers com uma origem WordPress retira o caminho de leitura do servidor WordPress e transforma o WooCommerce numa loja renderizada na edge. Eis como funciona a arquitetura, onde quebra e o que medir antes de adoptar.
wordpress

Cloudflare Workers e WordPress: servir o WooCommerce na edge

O Cloudflare Workers executa JavaScript e WebAssembly em centenas de centros de dados em mais de 100 países. Combinar Workers com uma origem WordPress retira o caminho de leitura do servidor WordPress e transforma o WooCommerce numa loja renderizada na edge. Eis como funciona a arquitetura, onde quebra e o que medir antes de adoptar.

Um estudo de caso detalhado mostrando como a WPPoland otimizou uma loja de moveis WooCommerce lenta de PageSpeed 40 para 98, reduzindo tempos de carregamento de 8 segundos para menos de 1 segundo e duplicando a taxa de conversão.
performance

De 40 para 98 PageSpeed: Como Transformamos uma Loja WooCommerce

Um estudo de caso detalhado mostrando como a WPPoland otimizou uma loja de moveis WooCommerce lenta de PageSpeed 40 para 98, reduzindo tempos de carregamento de 8 segundos para menos de 1 segundo e duplicando a taxa de conversão.

Como construir uma loja e-commerce ultrarrápida com Headless WooCommerce e Astro. Arquitetura, comparação de performance e guia de implementação passo a passo.
wordpress

Headless WooCommerce com Astro: O guia de performance e-commerce 2026

Como construir uma loja e-commerce ultrarrápida com Headless WooCommerce e Astro. Arquitetura, comparação de performance e guia de implementação passo a passo.