Sintaxe do Liquid aceita em blocos no Checkout Blocks

O Checkout Blocks aceita um subconjunto da sintaxe do Liquid em vários tipos de blocos disponíveis para personalizar o checkout com base em variáveis.

Variáveis do Liquid aceitas

Confira nas listas a seguir todas as variáveis do Liquid aceitas em blocos de Conteúdo dinâmico ou Conteúdo de item de linha. Algumas variáveis estão disponíveis apenas em determinadas páginas do checkout, e outras podem ser incluídas apenas em tipos específicos de bloco.

Consulte a documentação sobre objetos do Liquid da Shopify para informações específicas sobre cada variável.

Variáveis do Liquid para o checkout

Confira as variáveis do Liquid aceitas no checkout:

  • checkout.attributes
  • checkout.currency
  • checkout.has_selling_plan
  • checkout.item_count
  • checkout.line_items_subtotal_price
  • checkout.locale
  • checkout.market
  • checkout.metafields
  • checkout.note
  • checkout.requires_shipping
  • checkout.shipping_price
  • checkout.tax_price
  • checkout.total_price

Variáveis do Liquid para clientes

Confira as variáveis do Liquid aceitas para clientes:

  • customer.id
  • customer.b2b
  • customer.full_name
  • customer.first_name
  • customer.last_name
  • customer.email
  • customer.phone

Variáveis do Liquid para localização

Confira as variáveis do Liquid aceitas para mercados:

  • localization.market
    • localization.market.id
    • localization.market.handle

Variáveis do Liquid para pedidos

Confira as variáveis do Liquid aceitas para pedidos:

  • checkout.order.id
  • checkout.order.legacyResourceId
  • checkout.order.name

Variáveis do Liquid para a loja

Confira as variáveis do Liquid aceitas nas informações da loja:

  • shop.name
  • shop.url

Variáveis do Liquid para itens de linha

Variáveis de item de linha estão disponíveis apenas no bloco Conteúdo de item de linha.

Confira as variáveis do Liquid aceitas para itens de linha:

  • line_item.attributes
  • line_item.gift_card
  • line_item.has_selling_plan
  • line_item.line_price
  • line_item.line_level_discount_allocations
  • line_item.line_level_total_discount
  • line_item.options_with_values
  • line_item.price
  • line_item.product

    • line_item.product.is_gift_card
    • line_item.product.product_type
    • line_item.product.requires_selling_plan
    • line_item.product.tags
    • line_item.product.vendor
  • line_item.quantity

  • line_item.requires_shipping

  • line_item.sku

  • line_item.subtitle

  • line_item.title

  • line_item.trigger

  • line_item.type

  • line_item.variant

    • line_item.variant.available_for_sale
    • line_item.variant.barcode
    • line_item.variant.compare_at_price
    • line_item.variant.id
    • line_item.variant.price
      • line_item.variant.price.amount
      • line_item.variant.price.currency_code
    • line_item.variant.requires_shipping
    • line_item.variant.sku
    • line_item.variant.title
    • line_item.variant.unit_price
    • line_item.variant.weight
    • line_item.variant.weight_unit
  • line_item.variant_id

  • line_item.vendor

Exemplos de snippets que usam o Liquid

Confira a seguir alguns exemplos de snippets do Liquid aceitos no Checkout Blocks.

Verificar se o checkout é para B2B

Só é possível exibir conteúdo quando o checkout é para B2B.

{%- if customer.b2b -%}
B2B
{%- endif -%}

Analisar JSON

É possível analisar valores JSON, como atributos de item de linha (propriedades) ou metacampos.

{%- assign complex_json = checkout.metafields.checkoutblocks.complex | json -%}

Formatar moeda

O Checkout Blocks é totalmente compatível com o checkout em várias moedas. Basta usar o filtro relacionado para analisar e formatar dinheiro usando o formato de moeda ativo. Vale destacar que a moeda não é convertida automaticamente.

{{ checkout.total_price | money }}

Observação do carrinho

É possível exibir o valor da observação do carrinho, como o que foi incluído.

{{ checkout.note }}

Atributos do carrinho

Para exibir o valor de um atributo de carrinho específico, como a data de entrega, use este snippet. Não se esqueça de alterar a chave de Data de entrega para uma igual à sua.

{% assign delivery_date = '' %}
{% for attribute in checkout.attributes %}
  {% if attribute.key == 'Delivery date' %}
    {% assign delivery_date = attribute.value %}
  {% endif %}
{% endfor %}

Delivery Date: {{ delivery_date }}

Exibir todo o conteúdo do Liquid no checkout

Se você precisar analisar os valores existentes no objeto de checkout, use o filtro JSON para serializar. Use esse recurso apenas para fins de depuração.

{{ checkout | json }}

Metacampos de checkout

É possível exibir campos personalizados salvos no checkout nas páginas de agradecimento e de status do pedido que fazem referência aos metacampos do checkout. Saiba mais sobre como acessar metacampos.

Substitua your-namespace por seu namespace e your-custom-field-key por sua chave de campo personalizado, conforme definido no bloco:

{{ checkout.metafields.your-namespace.your-custom-field-key.value }}

Formatar uma data

Neste exemplo, vamos criar e formatar uma data de quatro dias no futuro (432.000 segundos).

A data formatada pode ser retornada como "02/24/2025":

{% assign future_date = "now" | date: "%s" | plus: 432000 %}
{{ future_date | date: "%m/%d/%Y" }}

Como alternativa, é possível formatar a data como "24 de fevereiro de 2025":

{% assign future_date = "now" | date: "%s" | plus: 432000 %}
{{ future_date | date: "%b %d, %Y" }}

Saiba mais sobre a formatação de datas no Liquid.

Personalizações de conteúdo de item de linha

A seguir, confira alguns exemplos de snippets do Liquid que podem ser usados nos blocos de conteúdo do item de linha.

Exibir condicionalmente a Comparação de preços

Use este snippet para exibir condicionalmente a Comparação de preços de um item de linha.

{%- if line_item.variant.compare_at_price.amount -%}
On sale. Originally {{ line_item.variant.compare_at_price.amount | times: line_item.quantity | money }}
{%- endif -%}

Exibir conteúdo com base nas tags de produto

É possível exibir o conteúdo do item de linha de forma condicional com base nas tags do produto, que diferenciam maiúsculas de minúsculas.

{%- if line_item.product.tags contains 'final-sale' -%}
Final sale
{%- endif -%}

Atributos de itens de linha (propriedades)

É possível iterar sobre os atributos do item de linha, também conhecidos como propriedades do item de linha, para exibir informações adicionais, como previsões de entrega, pré-vendas etc.

{%- assign first_line_attribute = line_item.attributes | first -%}
{%- assign first_attribute_value = first_line_attribute.value | json_parse -%}
{%- assign message = first_attribute_value.message -%}
{%- if message -%}
  {{ message }}
{%- endif -%}

Exibir o valor "acionador de metacampo"

O código a seguir contém o valor do acionador.

{{ line_item.trigger }}

Exibir total recorrente de um item de linha

Se você precisar mostrar o total recorrente de um item de linha de assinatura antes de descontos pontuais, use o valor line_level_total_discount.

{%- if line_item.line_level_total_discount > 0 and line_item.has_selling_plan -%}
Recurring total: {{ line_item.line_price | plus: line_item.line_level_total_discount | money }}
{%- endif -%}
Não encontrou as respostas que está procurando? Estamos sempre à disposição para ajudar você.