Sintaxis de Liquid admitida para los bloques en Checkout Blocks

Checkout Blocks admite un subconjunto de sintaxis de Liquid que puedes usar en varios de los tipos de bloques disponibles para crear las personalizaciones de la pantalla de pago en función de las variables.

Variables de Liquid admitidas

Las siguientes listas incluyen todas las variables de Liquid admitidas que se pueden usar en un bloque de contenido dinámico o en un bloque de contenido de línea de artículo. Se puede acceder a algunas variables solo en ciertas páginas de pago y otras pueden incluirse solo en tipos de bloques específicos.

Consulta la documentación de objetos Liquid de Shopify para ver los detalles específicos sobre cada variable.

Variables de Liquid de la pantalla de pago

Se admiten para la pantalla de pago las siguientes variables de Liquid:

  • 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

Variables de Liquid del cliente

Se admiten para los clientes las siguientes variables de Liquid:

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

Variables de Liquid de la localización

Se admiten para los mercados las siguientes variables de Liquid:

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

Variables de Liquid del pedido

Se admiten para los pedidos las siguientes variables de Liquid:

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

Variables de Liquid de la tienda

Se admiten para la información de la tienda las siguientes variables de Liquid:

  • shop.name
  • shop.url

Variables de Liquid de la línea de artículo

Se puede acceder a las variables de línea de artículo solo dentro de un bloque de contenido de línea de artículo.

Se admiten para las líneas de artículo las siguientes variables de Liquid:

  • 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

Ejemplos de fragmentos mediante el uso de Liquid

Los siguientes son algunos fragmentos de Liquid de ejemplo admitidos por Checkout Blocks.

Verificar si la pantalla de pago es B2B

Puedes mostrar contenido solo cuando la pantalla de pago es B2B.

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

Analizar JSON

Puedes analizar los valores JSON, como los metacampos o atributos (propiedades) de línea de artículo.

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

Formatear la moneda

Checkout Blocks admite totalmente el pago en múltiples monedas. Simplemente pasa el filtro para analizar el dinero y darle el formato de moneda activo. Esto no convierte automáticamente la moneda.

{{ checkout.total_price | money }}

Nota del carrito

Puedes mostrar el valor de la nota del carrito, como lo que se introdujo en el carrito.

{{ checkout.note }}

Atributos del carrito

Para mostrar el valor de un atributo de carrito en particular, como una fecha de entrega, puedes usar este fragmento. Asegúrate de cambiar la clave Fecha de entrega para que coincida con la tuya.

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

Delivery Date: {{ delivery_date }}

Mostrar el contenido completo de Liquid de la pantalla de pago

Si necesitas revisar qué valores existen en el objeto de pago, puedes usar el filtro JSON para serializarlo. Es recomendable que se use solo para fines de depuración.

{{ checkout | json }}

Metacampos de la pantalla de pago

Puedes mostrar los campos personalizados guardados en la pantalla de pago en las páginas de agradecimiento y de estado del pedido si haces referencia a los metacampos de la pantalla de pago. Obtén más información sobre cómo acceder a los metacampos.

Reemplaza your-namespace con el espacio de nombres y your-custom-field-key con la clave de campo personalizado según se define en el bloque:

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

Dar formato a una fecha

En este ejemplo, creamos una fecha cuatro días en el futuro (432.000 segundos) y le damos formato.

Puedes mostrar la fecha con el formato "02/24/2025":

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

O bien, puedes darle a la fecha el formato "Febrero 24, 2025":

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

Obtén más información sobre cómo dar formato a las fechas en Liquid.

Personalizaciones de contenido de línea de artículo

Los siguientes son algunos fragmentos de Liquid de ejemplo que puedes usar en los bloques de contenido de línea de artículo.

Mostrar condicionalmente el precio de comparación

Puedes mostrar condicionalmente el precio de comparación de una línea de artículo con este fragmento.

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

Mostrar contenido en función de las etiquetas de producto

Puedes mostrar condicionalmente el contenido de la línea de artículo en función de las etiquetas de producto, que distinguen entre mayúsculas y minúsculas.

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

Atributos (propiedades) de línea de artículo

Puedes iterar en atributos de línea de artículo, también conocidos como propiedades de línea de artículo, y mostrar información, como estimaciones de entrega, pedidos en preventa y más.

{%- 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 -%}

Mostrar el valor del "activador de metacampo"

El siguiente código contendrá el valor del activador.

{{ line_item.trigger }}

Mostrar el total recurrente para una línea de artículo

Si necesitas mostrar el total recurrente para una línea de artículo de suscripción antes de los descuentos únicos, puedes usar el 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 -%}
¿No encuentras las respuestas que estás buscando? Estamos aquí para ayudarte.