Skip to content

Filtros

Este artigo de referência fornece uma visão geral dos filtros em Liquid e aborda quais filtros são suportados pela Braze. Procurando ideias de como usar esses filtros? Confira nossa biblioteca de casos de uso de Liquid.

Filtros são a forma de modificar a saída de números, strings, variáveis e objetos em Liquid. Você pode usar filtros para reformatar texto estático ou dinâmico, como converter uma string de minúsculas para maiúsculas ou realizar operações matemáticas, como adição ou divisão.

Sintaxe de filtro

Os filtros devem ser colocados dentro de uma tag de saída {{ }} e são indicados por um caractere de barra vertical |.

1
{{"Big Sale" | upcase}}
1
BIG SALE

Neste exemplo, Big Sale é uma string e upcase é o filtro sendo aplicado.

Sintaxe para múltiplos filtros

Você pode usar múltiplos filtros em uma única saída. Eles são aplicados da esquerda para a direita.

1
 {{ "Big Sale" | upcase | remove: "BIG" }}
1
SALE

Filtros de array

Filtros de array são usados para alterar a saída de arrays.

Filtro Definição Suportado
join Une os elementos de um array com o caractere passado como parâmetro. O resultado é uma única string. ✅ Sim
first Retorna o primeiro elemento de um array. Em um array de atributo personalizado, este é o valor adicionado mais antigo. ✅ Sim
last Retorna o último elemento de um array. Em um array de atributo personalizado, este é o valor adicionado mais recentemente. ✅ Sim
compact Remove quaisquer itens nil de um array. ✅ Sim
concat Combina um array com outro array. ✅ Sim
find_index Retorna o item na posição de índice especificada em um array. O primeiro item em um array é referenciado com [0]. ⛔ Não
map Aceita um atributo de elemento do array como parâmetro e cria um array a partir do valor de cada elemento do array. ✅ Sim
reverse Inverte a ordem dos itens em um array. ✅ Sim
size Retorna o tamanho de uma string (o número de caracteres) ou de um array (o número de elementos). ✅ Sim
slice Retorna uma substring de uma string ou um subconjunto de um array, começando no índice especificado. ✅ Sim
sort Ordena os elementos de um array por um atributo específico de um elemento no array. ✅ Sim
sort_natural Ordena os itens em um array em ordem alfabética sem distinção entre maiúsculas e minúsculas. ✅ Sim
uniq Remove quaisquer instâncias duplicadas de elementos em um array. ✅ Sim
where Filtra um array para incluir apenas itens com um valor de propriedade específico. ✅ Sim

Filtros de cor

Filtros de cor não são suportados na Braze.

Filtros de fonte

Filtros de fonte não são suportados na Braze.

Filtros matemáticos

Filtros matemáticos permitem que você realize operações matemáticas. Se você usar múltiplos filtros em uma única saída, eles serão aplicados da esquerda para a direita.

Filtro Definição Suportado
abs Retorna o valor absoluto de um número. ✅ Sim
at_most Limita um número a um valor máximo. ✅ Sim
at_least Limita um número a um valor mínimo. ✅ Sim
ceil Arredonda uma saída para cima até o inteiro mais próximo. ✅ Sim
divided_by Divide uma saída por um número. A saída é arredondada para baixo até o inteiro mais próximo. Confira a dica a seguir para evitar o arredondamento. ✅ Sim
floor Arredonda uma saída para baixo até o inteiro mais próximo. ✅ Sim
minus Subtrai um número de uma saída. ✅ Sim
plus Adiciona um número a uma saída. ✅ Sim
round Arredonda a saída para o inteiro mais próximo ou para o número especificado de casas decimais. ✅ Sim
times Multiplica uma saída por um número. ✅ Sim
modulo Divide uma saída por um número e retorna o resto. ✅ Sim

Operações matemáticas com atributos personalizados

Tenha em mente que você não pode realizar operações matemáticas entre dois atributos personalizados.

1
{{custom_attribute.${current_rewards_balance} | plus: {{custom_attribute.${giftcard_balance}}}}}

Este exemplo não funcionaria porque você não pode referenciar múltiplos atributos personalizados em uma única linha de Liquid. Em vez disso, você precisaria atribuir uma variável a pelo menos um desses valores antes que as funções matemáticas sejam executadas. Somar dois atributos personalizados requer duas linhas de Liquid:

  1. Uma para atribuir o atributo personalizado a uma variável,
  2. Uma para realizar a adição.

Caso de uso: calcular o saldo atual

Digamos que queremos calcular o saldo atual de um usuário somando o saldo do cartão-presente e o saldo de recompensas.

  1. Use a tag assign para substituir o atributo personalizado de current_rewards_balance pelo termo “balance”. Isso significa que agora você tem uma variável chamada balance, que pode ser manipulada.
1
{% assign balance = {{custom_attribute.${current_rewards_balance}}} %}
  1. Use o filtro plus para combinar o saldo do cartão-presente de cada usuário com o saldo de recompensas, representado pelo 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 dinheiro

Se você está atualizando um usuário sobre uma compra, um saldo de conta ou qualquer coisa relacionada a dinheiro, você deve usar filtros de dinheiro. Os filtros de dinheiro garantem que os decimais estejam no lugar correto e que nenhuma parte da sua atualização seja perdida (como aquele 0 incômodo no final).

Filtro Definição Suportado
money Formata números para garantir que os decimais estejam no lugar correto e que zeros não sejam removidos do final de nenhum número. ✅ Sim
money_with_currency Formata números com o símbolo da moeda. ⛔ Não
money_without_currency Formata números sem o símbolo da moeda. ⛔ Não

Filtro money da Shopify versus filtro money da Braze

Caso você esteja inserindo um atributo personalizado (como account_balance), você deve sempre usar o filtro money para colocar os decimais no lugar correto e evitar que zeros sejam removidos do final de qualquer número:

1
${{custom_attribute.${account_balance} | money}}
COM O FILTRO MONEY SEM O FILTRO MONEY
Com filtro money Sem filtro money
Onde account_balance é inserido como 17.8. Onde account_balance é inserido como 17.8.

O filtro money na Braze difere da Shopify porque não aplica automaticamente casas decimais de acordo com uma configuração predefinida. Por exemplo, considere o seguinte cenário onde rewards_redeemed contém o valor 145:

1
${{event_properties.${rewards_redeemed} | money }}
1
$145.00

De acordo com o filtro money da Shopify, a saída deveria ser $1.45, porém na Braze, a saída será $145.00. Como alternativa, podemos usar o filtro divided_by para transformar o número em um decimal antes de aplicar o filtro money:

1
${{event_properties.${rewards_redeemed} | divided_by: 100.00 | money }}
1
$1.45

Filtros de string

Filtros de string são usados para manipular as saídas e variáveis de strings. Strings são uma combinação de caracteres alfanuméricos e devem ser envolvidas em aspas retas.

Filtro Descrição Suportado
append Adiciona caracteres ao final de uma string. ✅ Sim
camelize Converte uma string em CamelCase. ⛔ Não
capitalize Coloca a primeira palavra de uma string em maiúscula e converte os caracteres restantes em minúsculas. ✅ Sim
downcase Converte uma string em minúsculas. ✅ Sim
escape Escapa uma string. ✅ Sim
handleize Formata uma string em um handle. ⛔ Não
md5 Converte uma string em um hash MD5. Consulte Filtros de codificação para mais informações. ✅ Sim
sha1 Converte uma string em um hash SHA-1. Consulte Filtros de codificação para mais informações. ✅ Sim
hmac_sha1_hex
(anteriormente hmac_sha_1)
Converte uma string em um hash SHA-1 usando um código de autenticação de mensagem baseado em hash (HMAC). Passe a chave secreta da mensagem como parâmetro para o filtro. Consulte Filtros de codificação para mais informações. ✅ Sim
hmac_sha256 Converte uma string em um hash SHA-256 usando um código de autenticação de mensagem baseado em hash (HMAC). Passe a chave secreta da mensagem como parâmetro para o filtro. ✅ Sim
hmac_sha512 Converte uma string em um hash SHA-512 usando um código de autenticação de mensagem baseado em hash (HMAC). Passe a chave secreta da mensagem como parâmetro para o filtro. ✅ Sim
newline_to_br Insere uma tag HTML de quebra de linha <br> antes de cada quebra de linha em uma string. ✅ Sim
pluralize Retorna a versão singular ou plural de uma string em inglês com base no valor de um número. ⛔ Não
prepend Adiciona caracteres ao início de uma string. ✅ Sim
remove Remove todas as ocorrências de uma substring de uma string. ✅ Sim
remove_first Remove apenas a primeira ocorrência de uma substring de uma string. ✅ Sim
replace Substitui todas as ocorrências de uma string por uma substring. ✅ Sim
replace_first Substitui a primeira ocorrência de uma string por uma substring. ✅ Sim
slice O filtro slice retorna uma substring, começando no índice especificado. ✅ Sim
split O filtro split recebe uma substring como parâmetro. A substring é usada como delimitador para dividir uma string em um array. ✅ Sim
strip Remove tabulações, espaços e quebras de linha (todos os espaços em branco) dos lados esquerdo e direito de uma string. ✅ Sim
lstrip Remove tabulações, espaços e quebras de linha (todos os espaços em branco) do lado esquerdo de uma string. ⛔ Não
rstrip Remove tabulações, espaços e quebras de linha (todos os espaços em branco) do lado direito de uma string. ⛔ Não
strip_html Remove todas as tags HTML de uma string. ✅ Sim
strip_newlines Remove quaisquer quebras de linha de uma string. ✅ Sim
truncate Trunca uma string até o número de caracteres passado como primeiro parâmetro. Reticências (…) são adicionadas à string truncada e estão incluídas na contagem de caracteres. ✅ Sim
truncatewords Trunca uma string até o número de palavras passado como primeiro parâmetro. Reticências (…) são adicionadas à string truncada. ✅ Sim
upcase Converte uma string em maiúsculas. ✅ Sim

Filtros adicionais

Os filtros gerais a seguir servem para diversos propósitos, incluindo formatação ou conversão de conteúdo.

Filtro Descrição Suportado
date Converte um timestamp em outro formato de data. Consulte Filtro de data para mais informações. ✅ Sim
default Define um valor padrão para qualquer variável sem valor atribuído. Pode ser usado com strings, arrays e hashes. ✅ Sim
format_address Formata um endereço para exibir os elementos na ordem de acordo com a localidade. ⛔ Não
highlight Envolve palavras dentro dos resultados de pesquisa com uma tag HTML <strong> com a classe highlight se corresponder aos termos de pesquisa enviados. ⛔ Não

Você pode encontrar mais filtros suportados, como filtros de codificação e URL, na nossa página de Filtros avançados.

Filtro de data

O filtro date pode ser usado para converter um timestamp em um formato de data diferente. Você pode passar parâmetros para o filtro date para reformatar o timestamp. Para exemplos desses parâmetros, consulte strfti.me.

Por exemplo, digamos que o valor de date_attribute é o timestamp 2021-06-03 17:13:41 UTC.

1
{{custom_attribute.${date_attribute} | date: '%b %d'}}
1
03 June

Além das opções de formatação strftime, a Braze também suporta a conversão de um timestamp para tempo Unix com o filtro de data %s. Por exemplo, para obter o date_attribute em tempo Unix:

1
{{custom_attribute.${date_attribute} | date: '%s' }}
1
1433351621
New Stuff!