Filtros
Este artículo de referencia ofrece un resumen de los filtros en Liquid y cubre qué filtros son compatibles con Braze. ¿Buscas ideas sobre cómo puedes usar estos filtros? Consulta nuestra biblioteca de casos de uso de Liquid.
Los filtros son la forma de modificar la salida de números, cadenas, variables y objetos en Liquid. Puedes usar filtros para reformatear texto estático o dinámico, como cambiar una cadena de minúsculas a mayúsculas o para realizar operaciones matemáticas, como sumas o divisiones.

Braze no es compatible con todos los filtros de Liquid de Shopify. Esta página intenta describir los filtros de Liquid que Braze ha probado, pero puede que no sea una lista completa. Siempre prueba tu Liquid antes de enviar cualquier mensaje.
Si tienes alguna pregunta sobre un filtro que no aparece aquí, ponte en contacto con tu administrador del éxito del cliente.
Sintaxis de filtros
Los filtros deben colocarse dentro de una etiqueta de salida {{ }} y se indican con un carácter de barra vertical |.
1
{{"Big Sale" | upcase}}
1
BIG SALE
En este ejemplo, Big Sale es una cadena y upcase es el filtro que se aplica.

Los filtros se pueden usar en sentencias assign y etiquetas de salida ({{ }}), pero no en condicionales (if, elsif, unless), case/when, bucles for ni corchetes de acceso a arrays. Para usar un valor filtrado en uno de esos contextos, primero asigna el resultado a una variable. Para más detalles, consulta Dónde usar operadores y filtros.
Sintaxis para múltiples filtros
Puedes usar múltiples filtros en una sola salida. Se aplican de izquierda a derecha.
1
{{ "Big Sale" | upcase | remove: "BIG" }}
1
SALE
Filtros de arrays
Los filtros de arrays se usan para cambiar la salida de arrays.
| Filtro | Definición | Compatible |
|---|---|---|
| join | Une los elementos de un array con el carácter pasado como parámetro. El resultado es una sola cadena. | ✅ Sí |
| first | Devuelve el primer elemento de un array. En un array de atributos personalizados, este es el valor más antiguo añadido. | ✅ Sí |
| last | Devuelve el último elemento de un array. En un array de atributos personalizados, este es el valor añadido más recientemente. | ✅ Sí |
| compact | Elimina cualquier elemento nil de un array. |
✅ Sí |
| concat | Combina un array con otro array. | ✅ Sí |
| find_index | Devuelve el elemento en la posición de índice especificada en un array. El primer elemento de un array se referencia con [0]. |
⛔ No |
| map | Acepta un atributo de un elemento del array como parámetro y crea un array a partir del valor de cada elemento del array. | ✅ Sí |
| reverse | Invierte el orden de los elementos en un array. | ✅ Sí |
| size | Devuelve el tamaño de una cadena (el número de caracteres) o de un array (el número de elementos). | ✅ Sí |
| slice | Devuelve una subcadena de una cadena o un subconjunto de un array, comenzando en el índice especificado. | ✅ Sí |
| sort | Ordena los elementos de un array por un atributo dado de un elemento en el array. | ✅ Sí |
| sort_natural | Ordena los elementos de un array en orden alfabético sin distinguir entre mayúsculas y minúsculas. | ✅ Sí |
| uniq | Elimina cualquier instancia duplicada de elementos en un array. | ✅ Sí |
| where | Filtra un array para incluir solo elementos con un valor de propiedad específico. | ✅ Sí |
Filtros de color
Los filtros de color no son compatibles con Braze.
Filtros de fuentes
Los filtros de fuentes no son compatibles con Braze.
Filtros matemáticos
Los filtros matemáticos te permiten realizar operaciones matemáticas. Si usas múltiples filtros en una sola salida, se aplicarán de izquierda a derecha.
| Filtro | Definición | Compatible |
|---|---|---|
| abs | Devuelve el valor absoluto de un número. | ✅ Sí |
| at_most | Limita un número a un valor máximo. | ✅ Sí |
| at_least | Limita un número a un valor mínimo. | ✅ Sí |
| ceil | Redondea una salida hacia arriba al entero más cercano. | ✅ Sí |
| divided_by | Divide una salida entre un número. La salida se redondea hacia abajo al entero más cercano. Consulta el siguiente consejo para evitar el redondeo. | ✅ Sí |
| floor | Redondea una salida hacia abajo al entero más cercano. | ✅ Sí |
| minus | Resta un número de una salida. | ✅ Sí |
| plus | Suma un número a una salida. | ✅ Sí |
| round | Redondea la salida al entero más cercano o al número de decimales especificado. | ✅ Sí |
| times | Multiplica una salida por un número. | ✅ Sí |
| modulo | Divide una salida entre un número y devuelve el resto. | ✅ Sí |

Al dividir enteros (números enteros) entre enteros en Liquid, si el resultado es un flotante (número con decimal), Liquid redondeará automáticamente hacia abajo al entero más cercano. Sin embargo, dividir enteros entre flotantes siempre te dará un flotante. Esto significa que puedes convertir tus enteros en flotantes (1.0, 2.0, 3.0) para obtener un flotante como resultado.
Por ejemplo, {{15 | divided_by: 2}} dará como salida 7, mientras que {{15 | divided_by: 2.0}} dará como salida 7.5.
Operaciones matemáticas con atributos personalizados
Ten en cuenta que no puedes realizar operaciones matemáticas entre dos atributos personalizados.
1
{{custom_attribute.${current_rewards_balance} | plus: {{custom_attribute.${giftcard_balance}}}}}
Este ejemplo no funcionaría porque no puedes referenciar múltiples atributos personalizados en una sola línea de Liquid. En su lugar, necesitarías asignar una variable a al menos uno de estos valores antes de que se realicen las funciones matemáticas. Sumar dos atributos personalizados requeriría dos líneas de Liquid:
- Una para asignar el atributo personalizado a una variable,
- Una para realizar la suma.
Caso de uso: calcular el saldo actual
Supongamos que queremos calcular el saldo actual de un usuario sumando su saldo de tarjeta de regalo y su saldo de recompensas.
- Usa la etiqueta
assignpara sustituir el atributo personalizado decurrent_rewards_balancecon el término “balance”. Esto significa que ahora tienes una variable llamadabalance, que puedes manipular.
1
{% assign balance = {{custom_attribute.${current_rewards_balance}}} %}
- Usa el filtro
pluspara combinar el saldo de tarjeta de regalo de cada usuario con su saldo de recompensas, representado por el objeto{{balance}}.
1
2
{% assign balance = {{custom_attribute.${current_rewards_balance}}} %}
You have ${{custom_attribute.${giftcard_balance} | plus: {{balance}}}} to spend!
1
You have $35 to spend!
Filtros de dinero
Si estás actualizando a un usuario sobre su compra, un saldo de cuenta o cualquier cosa relacionada con dinero, deberías usar filtros de dinero. Los filtros de dinero aseguran que tus decimales estén en el lugar correcto y que ninguna parte de tu actualización se pierda (como ese molesto 0 al final).
| Filtro | Definición | Compatible |
|---|---|---|
| money | Formatea números para asegurar que los decimales estén en el lugar correcto y que los ceros no se eliminen del final de ningún número. | ✅ Sí |
| money_with_currency | Formatea números con el símbolo de moneda. | ⛔ No |
| money_without_currency | Formatea números sin el símbolo de moneda. | ⛔ No |

Para formatear correctamente un número con el filtro money, elimina cualquier coma en el número y añade el filtro plus: 0 antes del filtro money. Por ejemplo, consulta el siguiente Liquid:
1
2
{% assign my_int = "350000.25" | plus: 0 %}
{{ my_int | money }}
Filtro money de Shopify versus filtro money de Braze

El comportamiento del filtro money de Shopify difiere de cómo se usa en Braze. Consulta los siguientes ejemplos para una representación precisa del comportamiento esperado.
En caso de que estés ingresando un atributo personalizado (como account_balance), siempre deberías usar el filtro money para colocar tus decimales en el lugar correcto y evitar que los ceros se eliminen del final de cualquier número:
1
${{custom_attribute.${account_balance} | money}}
| CON EL FILTRO MONEY | SIN EL FILTRO MONEY |
|---|---|
![]() |
![]() |
Donde account_balance se ingresa como 17.8. |
Donde account_balance se ingresa como 17.8. |
El filtro money en Braze difiere de Shopify porque no aplica automáticamente puntos decimales según una configuración preestablecida. Por ejemplo, toma el siguiente escenario donde rewards_redeemed contiene un valor de 145:
1
${{event_properties.${rewards_redeemed} | money }}
1
$145.00
Según el filtro money de Shopify, esto debería tener una salida de $1.45, sin embargo en Braze, esto tendrá una salida de $145.00. Como solución alternativa, podemos usar el filtro divided_by para manipular el número a un decimal, antes de aplicar el filtro money:
1
${{event_properties.${rewards_redeemed} | divided_by: 100.00 | money }}
1
$1.45
Filtros de cadenas
Los filtros de cadenas se usan para manipular las salidas y variables de cadenas. Las cadenas son una combinación de caracteres alfanuméricos y deben estar envueltas en comillas rectas.

Las comillas rectas son diferentes de las comillas tipográficas en Liquid. Ten cuidado al copiar y pegar Liquid desde un editor de texto a Braze, ya que las comillas tipográficas causarán errores con tu Liquid. Si escribes tu Liquid directamente en Braze, las comillas rectas se aplicarán automáticamente.
| Filtro | Descripción | Compatible |
|---|---|---|
| append | Añade caracteres a una cadena. | ✅ Sí |
| camelize | Convierte una cadena a CamelCase. | ⛔ No |
| capitalize | Pone en mayúscula la primera palabra de una cadena y convierte a minúsculas los caracteres restantes. | ✅ Sí |
| downcase | Convierte una cadena a minúsculas. | ✅ Sí |
| escape | Escapa una cadena. | ✅ Sí |
| handleize | Formatea una cadena como un handle. | ⛔ No |
| md5 | Convierte una cadena en un hash MD5. Consulta Filtros de codificación para más información. | ✅ Sí |
| sha1 | Convierte una cadena en un hash SHA-1. Consulta Filtros de codificación para más información. | ✅ Sí |
| hmac_sha1_hex (anteriormente hmac_sha_1) |
Convierte una cadena en un hash SHA-1 usando un código de autenticación de mensajes basado en hash (HMAC). Pasa la clave secreta del mensaje como parámetro al filtro. Consulta Filtros de codificación para más información. | ✅ Sí |
| hmac_sha256 | Convierte una cadena en un hash SHA-256 usando un código de autenticación de mensajes basado en hash (HMAC). Pasa la clave secreta del mensaje como parámetro al filtro. | ✅ Sí |
| hmac_sha512 | Convierte una cadena en un hash SHA-512 usando un código de autenticación de mensajes basado en hash (HMAC). Pasa la clave secreta del mensaje como parámetro al filtro. | ✅ Sí |
| newline_to_br | Inserta una etiqueta HTML de salto de línea <br> delante de cada salto de línea en una cadena. |
✅ Sí |
| pluralize | Muestra la versión singular o plural de una cadena en inglés basándose en el valor de un número. | ⛔ No |
| prepend | Antepone caracteres a una cadena. | ✅ Sí |
| remove | Elimina todas las ocurrencias de una subcadena de una cadena. | ✅ Sí |
| remove_first | Elimina solo la primera ocurrencia de una subcadena de una cadena. | ✅ Sí |
| replace | Reemplaza todas las ocurrencias de una cadena con una subcadena. | ✅ Sí |
| replace_first | Reemplaza la primera ocurrencia de una cadena con una subcadena. | ✅ Sí |
| slice | El filtro slice devuelve una subcadena, comenzando en el índice especificado. | ✅ Sí |
| split | El filtro split toma una subcadena como parámetro. La subcadena se usa como delimitador para dividir una cadena en un array. | ✅ Sí |
| strip | Elimina tabulaciones, espacios y saltos de línea (todos los espacios en blanco) del lado izquierdo y derecho de una cadena. | ✅ Sí |
| lstrip | Elimina tabulaciones, espacios y saltos de línea (todos los espacios en blanco) del lado izquierdo de una cadena. | ⛔ No |
| rstrip | Elimina tabulaciones, espacios y saltos de línea (todos los espacios en blanco) del lado derecho de una cadena. | ⛔ No |
| strip_html | Elimina todas las etiquetas HTML de una cadena. | ✅ Sí |
| strip_newlines | Elimina cualquier salto de línea de una cadena. | ✅ Sí |
| truncate | Trunca una cadena al número de caracteres pasado como primer parámetro. Se añaden puntos suspensivos (…) a la cadena truncada y se incluyen en el conteo de caracteres. | ✅ Sí |
| truncatewords | Trunca una cadena al número de palabras pasado como primer parámetro. Se añaden puntos suspensivos (…) a la cadena truncada. | ✅ Sí |
| upcase | Convierte una cadena a mayúsculas. | ✅ Sí |
Filtros adicionales
Los siguientes filtros generales sirven para muchos propósitos, incluyendo formatear o convertir contenido.
| Filtro | Descripción | Compatible |
|---|---|---|
| date | Convierte una marca de tiempo a otro formato de fecha. Consulta Filtro de fecha para más información. | ✅ Sí |
| default | Establece un valor predeterminado para cualquier variable sin valor asignado. Se puede usar con cadenas, arrays y hashes. | ✅ Sí |
| format_address | Formatea una dirección para imprimir los elementos de la dirección en orden según su configuración regional. | ⛔ No |
| highlight | Envuelve palabras dentro de los resultados de búsqueda con una etiqueta HTML <strong> con la clase highlight si coincide con los términos de búsqueda enviados. |
⛔ No |
Puedes encontrar más filtros compatibles, como filtros de codificación y URL, en nuestra página de Filtros avanzados.
Filtro de fecha
El filtro date se puede usar para convertir una marca de tiempo a un formato de fecha diferente. Puedes pasar parámetros al filtro date para reformatear la marca de tiempo. Para ejemplos de estos parámetros, consulta strfti.me.
Por ejemplo, supongamos que el valor de date_attribute es la marca de tiempo 2021-06-03 17:13:41 UTC.
1
{{custom_attribute.${date_attribute} | date: '%b %d'}}
1
03 June
Además de las opciones de formato strftime, Braze también permite convertir una marca de tiempo a tiempo unix con el filtro de fecha %s. Por ejemplo, para obtener date_attribute en tiempo unix:
1
{{custom_attribute.${date_attribute} | date: '%s' }}
1
1433351621

