Sintaxe
Filtros customizados
format_price
Formata um valor numérico como moeda, respeitando a moeda configurada na loja.| Entrada | Saída (BRL) | Saída (USD) |
|---|---|---|
29.90 | R$ 29,90 | $29.90 |
0 | R$ 0,00 | $0.00 |
1500 | R$ 1.500,00 | $1,500.00 |
hex_to_hsl
Converte uma cor hexadecimal para formato HSL (sem a funçãohsl()). Ideal para uso com CSS custom properties.
| Entrada | Saída |
|---|---|
#ff0000 | 0 100% 50% |
#615afa | 242 95% 48% |
#ffffff | 0 0% 100% |
| valor inválido | 0 0% 0% |
cdn
Adiciona o domínio CDN da CentralCart ao caminho de um arquivo. Use para referenciar imagens e assets armazenados no CDN.Outros filtros
Além dos filtros customizados, todos os filtros nativos do template engine estão disponíveis. Aqui estão os mais úteis:Texto
| Filtro | Descrição | Exemplo |
|---|---|---|
upcase | Converte para maiúsculas | <%= "texto" | upcase %> → TEXTO |
downcase | Converte para minúsculas | <%= "TEXTO" | downcase %> → texto |
capitalize | Primeira letra maiúscula | <%= "texto" | capitalize %> → Texto |
truncate | Limita o tamanho do texto | <%= texto | truncate: 50 %> |
truncatewords | Limita o número de palavras | <%= texto | truncatewords: 10 %> |
strip_html | Remove tags HTML | <%= conteudo | strip_html %> |
escape | Escapa caracteres HTML | <%= input | escape %> |
newline_to_br | Converte quebras de linha em <br> | <%= texto | newline_to_br %> |
replace | Substitui texto | <%= texto | replace: "antigo", "novo" %> |
split | Divide texto em array | <%= "a,b,c" | split: "," %> |
append | Adiciona texto ao final | <%= "hello" | append: " world" %> |
prepend | Adiciona texto ao início | <%= "world" | prepend: "hello " %> |
Números
| Filtro | Descrição | Exemplo |
|---|---|---|
plus | Soma | <%= 5 | plus: 3 %> → 8 |
minus | Subtração | <%= 10 | minus: 3 %> → 7 |
times | Multiplicação | <%= 5 | times: 2 %> → 10 |
divided_by | Divisão | <%= 10 | divided_by: 2 %> → 5 |
round | Arredondamento | <%= 4.6 | round %> → 5 |
floor | Arredonda para baixo | <%= 4.9 | floor %> → 4 |
ceil | Arredonda para cima | <%= 4.1 | ceil %> → 5 |
Arrays
| Filtro | Descrição | Exemplo |
|---|---|---|
size | Tamanho do array | <%= categories | size %> |
first | Primeiro item | <%= categories | first %> |
last | Último item | <%= categories | last %> |
join | Junta itens com separador | <%= tags | join: ", " %> |
sort | Ordena o array | <%= items | sort: "name" %> |
reverse | Inverte a ordem | <%= items | reverse %> |
map | Extrai campo de cada item | <%= categories | map: "name" %> |
where | Filtra por condição | <%= items | where: "active", true %> |
uniq | Remove duplicatas | <%= tags | uniq %> |
Datas
| Filtro | Descrição | Exemplo |
|---|---|---|
date | Formata uma data | <%= order.created_at | date: "%d/%m/%Y" %> |
| Formato | Resultado |
|---|---|
%d/%m/%Y | 01/04/2026 |
%d/%m/%Y %H:%M | 01/04/2026 14:30 |
%B %d, %Y | April 01, 2026 |