Skip to content

Exibir promoções, metas e créditos ​

Os aplicativos são configurados no painel da loja. O tema recebe os resultados comerciais e decide sua estrutura e aparência. Este exemplo pode substituir uma section do carrinho ou ser usado em um component com argumentos explícitos.

liquid
{% if cart.promotion %}
  <p><span>{{ cart.promotion.label }}</span><strong>− {{ cart.discount | money }}</strong></p>
{% endif %}
{% if cart.coupon.eligible and cart.coupon.applied == false %}
  <p>Uma promoção maior foi aplicada. Você pode remover o cupom no carrinho.</p>
{% endif %}
{% if cart.benefits.freeShipping %}
  <aside aria-label="Meta para frete grátis">
    {% if cart.benefits.freeShipping.reached %}
      <p>Meta atingida! Calcule e selecione a entrega grátis.</p>
    {% else %}
      <p>Faltam {{ cart.benefits.freeShipping.remaining | money }} em produtos.</p>
    {% endif %}
    <progress max="100" value="{{ cart.benefits.freeShipping.percent }}" aria-label="Progresso da meta"></progress>
  </aside>
{% endif %}
{% for gift in cart.benefits.gifts %}
  <p>Brinde nesta compra: {{ gift.name }} ({{ gift.quantity }} unidade).</p>
{% endfor %}
{% if buyer.authenticated and buyer.wallet.enabled %}
  <a href="{{ '/conta/creditos' | storefront_url }}">Meus créditos: {{ buyer.wallet.balance | money }}</a>
{% endif %}

cart.promotion informa a promoção vencedora; cart.discount contém seu valor. Valor da compra, cupom, atacado e desconto do cliente não se acumulam. O tema exibe os resultados do servidor. Um cupom elegível que perdeu continua removível. No checkout, preserve os hooks de desconto para atualizar o resumo e transmitir a expectativa revisada.

cart.benefits pode não existir: não mostre valores fixos como benefícios reais. buyer.wallet é privado e só está disponível nos contextos de conta previstos. O exemplo usa money para formatar centavos e storefront_url para preservar a navegação de prévia. Nomes são escapados pelo engine; não use raw em dados comerciais.

Consulte o contrato completo e os hooks do checkout para criar o campo de uso de créditos. Atingir a meta de frete ainda exige calcular o CEP e escolher a modalidade grátis. Publicar uma revisão atualiza somente a loja selecionada; arquivos oficiais novos não reescrevem lojas ativas.

Temas V3 · Liquid estrutura, CSS desenha, JSON compõe.