LogoLogo
Documentação de Temas
Documentação de Temas
  • 🚀COMECE POR AQUI
    • Temas Tray
    • Entenda o Tema
    • Meu primeiro tema
  • 💻Tray CLI
    • Instalação
    • Comandos
      • Erros Retornados
    • API para integrações Tray CLI
  • 🧱Construindo seu Template
    • Twig
      • O que é o Twig
      • Como ele é utilizado nos temas
      • Possibilidades de uso
      • Documentação para consulta
    • Visão Geral
      • Estrutura do Tema
      • Arquivo de configuração
      • Extensões de arquivos
      • Codificação de Arquivos
      • Avisos e Recomendações
      • Flags
    • Editor do Tema
      • Antigo
        • Como criar um Editor
        • Settings.html
      • Novo
        • Estrutura
          • Seções
          • Ícones
          • Componentes
            • Text
            • Textarea
            • Email
            • Number
            • Color
            • Checkbox
            • Radio
            • Select
            • Toggle
            • Upload
            • Tab
            • Alert
          • Exemplo de utilização
        • Thumb preview do tema
        • Imagens padrões
        • Como desabilitar e reabilitar?
      • Settings.json
    • Desenvolver
      • Atributo Google Analytics 4
      • Como adicionar o botão comprar na listagem dos produtos
      • Como criar um carrossel de produtos
      • Como inserir um vídeo na home da loja
      • Como manipular as variações de produtos
      • Como saber se o usuário está logado
      • Descontinuação do carrinho.php
      • Exibindo as formas de pagamento de um produto
      • Informação de preço com tempo de cache menor
      • Order Bump - Produtos Relacionados
      • Páginas Institucionais
      • Página de recuperação de senha
      • Página Live Shop
      • Recursos extras
      • Personalização das paginas de carrinho e checkout
    • Core Web Vitals
      • Desempenho
        • Lazyload
        • Primeira dobra
        • Fontes
        • Definição largura e altura
        • Sprite formas de pagamentos
      • Boas Práticas
        • Origem cruzada
      • Acessibilidade
        • Atributo Lang
        • Nome discernível
        • Atributo ALT
        • Contraste
        • IDs únicos
        • ARIA Labelled By
        • Tabindex
    • Otimizar e Medir
      • Carregamento na home
      • Layout AMP
      • Utilizando PWA na loja
    • Referências
      • Objetos
        • banner
        • breadcrumb
        • category
        • categories
        • filters
        • filter_options
        • links
        • pages
        • paginate
        • paymentMethods
        • product
        • productTabs
        • products
        • productFeatured
        • seals
        • search
        • settings
        • store
        • tags
        • tray
        • themePath
        • utils
      • Funções
        • asset()
        • Brands()
        • Categories()
        • Image()
        • Products()
        • Translation()
      • Data Attributes
        • Banners
        • Cart
        • Compare
        • Filter
        • Logged User
        • Search (Suggestion)
      • Componentes
        • Adicionar ao carrinho sem sair da página
        • Banner Desconto Progressivo
        • Banner extra com contagem de cliques
        • Banner Régua
        • Banner Rotativo
        • Botão "Voltar para o topo"
        • Botões Quantidade
        • Carrinho Lateral
        • Exibir a segunda imagem ao passar o mouse
        • Filtro Inteligente
        • Link flutuante para Whatsapp
        • Menu de Categorias
        • Menu de Categorias em 3 Níveis
        • Menu de Categorias com ver mais categorias
        • Menu de Categorias com Imagens
        • Menu de Categorias com Imagens - Hover
        • Menu de Categorias com produto
        • Menu de Marcas
        • Modal de Ofertas
        • Notícias com imagem na home
        • Novo Filtro Inteligente
        • Paginação
        • Porcentagem Desconto
        • Popup de Newsletter
        • Star Ranking
        • Selos da Loja
        • Selos do produto
        • Showcase ( List / Grid )
        • Topo Flutuante
        • Tray Login
        • Whatsapp flutuante
    • APIs Disponíveis
      • Busca
      • Carrinho de Compra
      • Categorias
      • Produtos
      • Variações de Produto
  • ✔️Homologação
    • Loja de Temas Tray
    • Requerimentos
      • Exclusividade
      • Identidade única
      • Estrutura necessária
      • Funcionalidades
      • Nova Busca e Filtro inteligente
      • Selos de produtos
      • Google Lighthouse
      • Consistência e funcionalidade
      • Compatibilidade com navegadores
      • Assets
      • Otimização para buscadores (SEO)
      • Acessibilidade
      • Configurações
      • Sistema de cores
      • Imagens responsivas
      • Nomes dos temas
      • Versionamento e notas de lançamento
      • Lojas demonstrativas
      • Documentação e suporte
    • Checklist obrigatório
    • Templates
    • Homologando o tema
    • Atualizando o tema
    • FAQ
  • 📣NOVIDADES
    • Tray CLI
    • Checklist
    • Tema Draft
    • Novo Editor
Powered by GitBook
On this page
  • Atributos disponíveis
  • Como Usar

Was this helpful?

  1. Construindo seu Template
  2. Referências
  3. Objetos

categories

PreviouscategoryNextfilters

Last updated 2 years ago

Was this helpful?

O Objeto categories é responsável por retornar um array das categorias cadastradas no painel.

Disponível em todas as páginas. Para saber mais sobre categorias acesse:

Atributos disponíveis

E se você deseja utilizar as categorias do seu jeito, poderá utilizar as informações da tabela de atributos abaixo, substituindo o número 0 pela posição no array da categoria desejada. Lembrando que o padrão de chamada é sempre: categories[{index}].{key}

Atributos
Característica

{{ categories[0].id }}

Identificador único de uma determinada categoria.

{{ categories[0].has_product }}

Retorna um valor booleano caso a categoria tenha produtos. Se o valor for 1 a categoria possui produtos.

{{ categories[0].name }}

Nome da categoria

{{ categories[0].parent_id }}

Identificador único da categoria mãe.

{{ categories[0].slug }}

Exibe uma string que corresponde ao trecho de URL que indica o acesso a categoria.

{{ categories[0].link }}

Link para acesso a página da categoria

{{ categories[0].images }}

Imagem por categoria retornada dentro de um array.

{{ categories.children }}

Pode ser usado para percorrer as subcategorias utilizando o loop. ¹

¹ Para correto funcionamento é preciso que o loop de subcategorias esteja dentro de outro loop que percorre as categorias.

Como Usar

No código HTML o objeto categories pode ser usado em um loop para exibir todas as categorias existentes no array como no formato abaixo:

Input
<ul>
  {% for categoria in categories %}
    <li>
      <a href="{{ categoria.link }}">{{ categoria.name }}</a>
      {% if categoria.children %}
        <ul class="menu-children">
          {% if categoria.images %}
            <img src="{{ categoria.images[0] }}" alt="{{ categoria.name }}">
          {% endif %}
          {% for child in categoria.children %}
            <li>
              <a href="{{ child.link }}">{{ child.name }}</a>
            </li>
          {% endfor %}
        </ul>
      {% endif %}
    </li>
  {% endfor %}
</ul>
Output
<ul>
    <li>
      <a href="www.sualoja/ExemploA">CategoriaA</a>
        <ul class="menu-children">
            <img src="https://caminhoimg.com.br/img.png" alt="CategoriaA">
            <li>
              <a href="CategoriaA-1">CategoriaA-1</a>
            </li>
            <li>
              <a href="CategoriaA-2">CategoriaA-2</a>
            </li>
            <li>
              <a href="CategoriaA-3">CategoriaA-3</a>
            </li>   
        </ul>
    </li>
    <li>
      <a href="www.sualoja/ExemploA">CategoriaB</a>
        <ul class="menu-children">
            <li>
              <a href="CategoriaB-1">CategoriaB-1</a>
            </li>
            <li>
              <a href="CategoriaB-2">CategoriaB-2</a>
            </li>
            <li>
              <a href="CategoriaB-3">CategoriaB-3</a>
            </li>   
        </ul>
    </li>
</ul>

O uso do objeto categories só retorna as categorias que possuírem produtos cadastrados na plataforma.

Além do uso convencional o objeto categories também pode ser usado para consultar uma determinada categoria a partir de um índice passado no array.

Para exemplificar as possibilidades de uso do objeto categories, o código HTML abaixo mostra todos os atributos em uso e o exemplo de resultado desse código.

Input
{% for category in categories %}
  <div>
    <a class= "categoria-pai" href="{{ category.link }}">
      <strong>Categoria pai:</strong>{{ category.name }}
    </a>
    {% for child in category.children %}
      <div class="categoria-filha">
        <strong>Categoria FIlha: </strong> {{ child.name }}
        ID: {{ child.id }}  
        Parent ID: {{ child.parent_id }}
        Link: {{ child.link }}
        Slug: {{ child.slug }}
        Has Product: {{ child.has_product }}
      </div>
    {% endfor %}
  </div>
{% endfor %}
Output
<div>
    <a class= "categoria-pai" href="www.sualoja/roupas">
      <strong>Categoria pai:</strong> Roupas
    </a>
    <div class="categoria-filha">
      <strong>Categoria FIlha: </strong> Camisas
      ID: 9  
      Parent ID: 3
      Link: www.sualoja/roupas/camisas
      Slug: roupas/camisas
      Has Product: 1
    </div>
    <div class="categoria-filha">
      <strong>Categoria FIlha: </strong> Calças
      ID: 11  
      Parent ID: 3
      Link: www.sualoja/roupas/calcas
      Slug: roupas/calcas
      Has Product: 1
    </div>
</div>
🧱
Cadastrar categorias