Skip to main content

Visão geral

Alguns temas não atualizam o ícone automaticamente, e este guia vai mostrar como corrigir isso usando um pouco de código personalizado. Siga os passos abaixo para deixar tudo sincronizado corretamente. Aqui está um exemplo de como essa divergência se parece: Drawer do Upcart mostrando Cart 2 enquanto a bolha do ícone do carrinho do tema ainda exibe 1

Passos importantes antes de começar!

Para corrigir o problema do ícone do carrinho, você precisa identificar o nome da classe do seu ícone do carrinho. Cada tema é diferente, e este passo garante que o código funcione especificamente para a sua loja.

1. Use o Chrome Developer Tools

Cada tema é diferente, então você vai precisar usar o Chrome Developer Tools (Inspecionar) para identificar o nome da classe do seu ícone do carrinho.
  • Clique com o botão direito no ícone do carrinho da sua vitrine e selecione Inspecionar no Google Chrome.
  • Encontre o elemento HTML do seu ícone do carrinho (por exemplo, <span class="cart-count-bubble">).
  • Precisa de ajuda para usar o Chrome Developer Tools? Confira este guia com instruções passo a passo.

2. Peça ajuda (opcional)

Se você não conseguir localizar a classe do seu ícone do carrinho ou se sentir travado, não se preocupe! Você tem opções:
  • Entre em contato com o desenvolvedor do seu tema: ele conhece seu tema melhor do que ninguém e pode ajudar você a encontrar a classe correta.
  • Contrate um Shopify Expert: se precisar de suporte adicional, a Shopify tem um diretório de especialistas confiáveis que podem ajudar. Encontre um Shopify Expert aqui.

🚧 Aviso sobre código personalizado

O código de exemplo fornecido abaixo é apenas um modelo — ele não vai funcionar se você copiá-lo e colá-lo diretamente. Você precisa substituir o nome de classe de exemplo (por exemplo, .cart-count-bubble > span) pelo nome de classe específico do seu ícone do carrinho.

Correção passo a passo

Dividimos este processo em três níveis de correção, começando pela solução mais simples (Nível 1). Cada nível se baseia no anterior — tente primeiro o Nível 1 e passe para o Nível 2 ou 3 apenas se necessário.

Passo 1: adicionar código personalizado no Upcart

Primeiro, como vamos precisar adicionar um código HTML personalizado no editor do Upcart, vamos preparar essa seção:
  1. Vá em Upcart Editor > Settings e abra a aba Custom HTML (atrás de More settings se ela não couber na fileira de abas).
  2. Defina a localização como Scripts (Before Load).
  3. Cole seu código editado aqui (forneceremos exemplos para cada nível abaixo).
Veja como isso fica: Configurações de Custom HTML do Upcart com a localização do HTML definida como Scripts Before Load

Passo 2: aplicar a correção por nível

Nível 1 (básico)

Quando o carrinho carrega, este script soma as quantidades dos itens de linha do carrinho e escreve o total no elemento de contagem dentro da bolha do carrinho do seu tema. Ele serve para temas em que a contagem fica em um elemento aninhado simples (por exemplo, .cart-count-bubble > span). Não esqueça
  • Substitua .cart-count-bubble > span pela classe do seu ícone do carrinho.
  • Teste na sua vitrine depois de adicionar o código.
Colando o script de contagem do Nível 1 no Custom HTML do Upcart usando o seletor cart-count-bubble

Código de exemplo para o Nível 1

Nota sobre versões antigas: os callbacks window.upcartOnCartLoaded ainda funcionam, mas estão obsoletos e registram avisos no console. Use upcartSubscribeCartLoaded para todos os scripts novos. Observe que event.cart não tem uma propriedade item_count — use event.cart.items.reduce((total, item) => total + item.quantity, 0) para calcular a contagem total de itens.

Nível 2 (moderado)

Se o Nível 1 não funcionou, seu tema pode substituir todo o HTML do ícone do carrinho quando a contagem muda. Esta versão reconstrói a marcação do ícone para os estados de carrinho vazio e não vazio, para que a contagem e o ícone permaneçam sincronizados. Não esqueça
  • Substitua #cart-icon-bubble-custom pelo seletor do wrapper do ícone do carrinho do seu tema.
  • Teste depois de salvar.
Colando o script do ícone do carrinho do Nível 2 no Custom HTML do Upcart usando o seletor cart-icon-bubble-custom

Código de exemplo para o Nível 2

Nota sobre versões antigas: os callbacks window.upcartOnCartLoaded ainda funcionam, mas estão obsoletos e registram avisos no console. Use upcartSubscribeCartLoaded para todos os scripts novos.Observe que event.cart não tem uma propriedade item_count — os scripts acima derivam o total com event.cart.items.reduce((total, item) => total + item.quantity, 0) e o passam como itemCount. Cópias antigas desses snippets que interpolam cart.item_count lançam um ReferenceError e silenciosamente nunca atualizam o ícone.

Nível 3 (avançado)

Se o seu tema usa marcações separadas do ícone do carrinho para desktop e mobile, execute a mesma lógica de atualização em dois seletores, para que cada viewport receba o HTML e a contagem corretos. Não esqueça
  • Substitua #cart-icon-bubble-custom-desktop e #cart-icon-bubble-custom-mobile pelas classes do seu tema.
  • Teste minuciosamente nas visualizações de desktop e mobile.
Colando o script do Nível 3 no Custom HTML do Upcart com seletores separados de ícone do carrinho para desktop e mobile

Código de exemplo para o Nível 3

Nota sobre versões antigas: os callbacks window.upcartOnCartLoaded ainda funcionam, mas estão obsoletos e registram avisos no console. Use upcartSubscribeCartLoaded para todos os scripts novos.Observe que event.cart não tem uma propriedade item_count — os scripts acima derivam o total com event.cart.items.reduce((total, item) => total + item.quantity, 0) e o passam como itemCount. Cópias antigas desses snippets que interpolam cart.item_count lançam um ReferenceError e silenciosamente nunca atualizam o ícone.

Ainda não funciona?

Se nenhum desses níveis resolver o problema, não se preocupe — você ainda tem opções! Isso provavelmente significa que seu tema requer uma personalização mais avançada. Veja o que você pode fazer a seguir:
  • Entre em contato com o desenvolvedor do seu tema para pedir ajuda.
  • Contrate um Shopify Expert que possa criar uma solução personalizada para a sua loja.