# category

O Objeto `category` é responsável por retornar a categoria atual do tema. Através dela é possível, por exemplo, fazer validações relacionadas a categoria dos produtos para criação de filtros ou exibição de informações

{% hint style="warning" %}
**Disponível para uso na página:** catalog
{% endhint %}

{% hint style="info" %}
**Para saber mais sobre categorias acesse:** [Cadastrar categorias](https://basedeconhecimento.tray.com.br/hc/pt-br/articles/6734145561243-Cadastrar-Categorias)
{% endhint %}

### Atributos disponíveis

Para imprimir informações de uma categoria na página catalog, é possível utilizar o `category`. Segue abaixo algumas chamadas:

<table><thead><tr><th width="366.2593252624973">Atributos</th><th width="232.11971565984345">Característica</th></tr></thead><tbody><tr><td><code>{{ category.id }}</code></td><td>Identificador único da categoria</td></tr><tr><td><code>{{ category.name }}</code></td><td>Nome da categoria</td></tr><tr><td><code>{{ category.brands }}</code></td><td>As marcas vinculadas aos produtos da categoria são retornadas em um array.</td></tr><tr><td><code>{{ category.children }}</code></td><td>Subcategorias são retornadas em um array.</td></tr><tr><td><code>{{ category.parent }}</code></td><td>Exibe o ID da categoria mãe quando a página em execução for uma subcategoria.</td></tr><tr><td><code>{{ category.small_description }}</code></td><td>Exibe a descrição detalhada da categoria cadastrada no campo "Descrição para categoria".</td></tr><tr><td><code>{{ category.title }}</code></td><td>Titulo da Categoria (SEO) cadastrado no campo "Título da categoria (meta title)"</td></tr><tr><td><code>{{ category.link }}</code></td><td>URL da categoria</td></tr><tr><td><code>{{ category.order }}</code></td><td>Número referente a ordem de exibição da categoria segundo as configurações da loja.</td></tr><tr><td><code>{{ category.slug }}</code></td><td>Exibe uma string que corresponde ao trecho de URL que indica o acesso a categoria.</td></tr><tr><td><code>{{ category.has_acceptance_term }}</code></td><td>Retorna <strong><code>1</code></strong> caso a loja possua o "termo de aceite" habilitado para a categoria. <mark style="color:orange;"><strong>¹</strong></mark></td></tr><tr><td><code>{{ category.acceptance_term }}</code></td><td>Retorna a descrição incluída no campo "Termo de Aceite" da categoria. </td></tr></tbody></table>

{% hint style="warning" %} <mark style="color:orange;">**¹**</mark> Para saber mais sobre o termo de aceite por categoria e produto [acesse o link.](https://basedeconhecimento.tray.com.br/hc/pt-br/articles/6733439361307-Termo-de-Aceite-em-sua-loja)
{% endhint %}

## Como Usar

Dentro da página **pages/catalog** o objeto `category` pode ser usado para exibir as informações desejadas.

O código HTML abaixo mostra o nome e o ID da categoria atual em exibição.

{% code title="Input" %}

```html
<div>
   <h4>ID: {{ category.id }}</h4>
   <h3>Categoria: {{ category.name }}</h3>
</div>
```

{% endcode %}

{% code title="Output" %}

```html
<div>
   <h4>ID: 1</h4>
   <h3>Categoria: Outlet</h3>
</div>  
```

{% endcode %}

## Exemplo <a href="#ir-para-brinquedos" id="ir-para-brinquedos"></a>

No código abaixo caso a categoria possua marcas é exibido um filtro que percorre o array `category.brands` em um loop para mostrar o nome de cada marca dentro da tag `option`.

{% code title="Input" %}

```html
{% if category.brands %}
  <h5>Filtrar por Marcas:</h5>
  <select name="filtrar_marca">
    {% for brand in category.brands %}
      <option value="{{ brand.name }}">{{ brand.name }}</option>
    {% endfor %}
  </select>
{% endif %} 
```

{% endcode %}

{% code title="Output" %}

```html
<h5>Filtrar por Marcas:</h5>
<select name="filtrar_marca">
    <option value="Exemplo A">Exemplo A</option>
    <option value="Exemplo B">Exemplo B</option>
    <option value="Exemplo C">Exemplo C</option>
    <option value="Exemplo D">Exemplo D</option>In
</select>
```

{% endcode %}
