Schema Breadcrumb e BreadcrumbList
1. Schema para breadcrumb (como referência)
O campo breadcrumb é usado em schemas (como WebPage) para referenciar um BreadcrumbList que descreve a navegação hierárquica da página. Ele não é um tipo completo por si só, mas um ponteiro para um schema BreadcrumbList.
@id
Um identificador único para o BreadcrumbList referenciado, geralmente uma URL com um fragmento (ex.: #schema/breadcrumb). Deve ser uma string que represente um URI único.
Estrutura esperada:
{
"breadcrumb": {
"@id": "<identificador único do BreadcrumbList>"
}
}
Observações:
- O breadcrumb é apenas uma referência, não contém a lista de itens em si.
- O
@iddeve corresponder exatamente ao@iddo schemaBreadcrumbListdefinido em outro lugar no mesmo documento ou contexto. - Este campo é usado em schemas como
WebPagepara associar a página a uma trilha de navegação.
2. Schema para BreadcrumbList
O tipo BreadcrumbList descreve uma trilha de navegação (breadcrumbs), que indica a posição de uma página na hierarquia do site. Ele contém uma lista ordenada de itens (ListItem) que representam cada nível da navegação.
@type
Deve ser definido como "BreadcrumbList". Especifica o tipo de schema.
@id
Um identificador único para o BreadcrumbList, geralmente uma URL com um fragmento (ex.: #schema/breadcrumb). Deve ser uma string URI única.
itemListElement
Uma lista ordenada (array) de itens que compõem a trilha de navegação. Cada item é do tipo ListItem e deve conter:
@type: Deve ser “ListItem”, indicando que é um item da lista.position: Um número inteiro que indica a ordem do item na trilha.name: O nome do item, como o título do nível na navegação.item: A URL do recurso correspondente ao item.
Estrutura esperada:
{
"@type": "BreadcrumbList",
"@id": "<identificador único>",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "<nome do item>",
"item": "<URL do item>"
},
{
"@type": "ListItem",
"position": 2,
"name": "<nome do item>",
"item": "<URL do item>"
}
// Mais itens, se necessário
]
}
Observações:
- O
itemListElementdeve conter pelo menos umListItem, mas geralmente inclui múltiplos itens. - O
positiondeve ser sequencial (1, 2, 3…). - O
itemdeve ser uma URL válida, enameo texto visível ao usuário. - O
@iddoBreadcrumbListdeve ser o mesmo do@idreferenciado embreadcrumb.
Diferenças entre breadcrumb (referência) e BreadcrumbList
Propósito:
- breadcrumb (referência): Campo usado em schemas como
WebPagepara apontar para umBreadcrumbList. - BreadcrumbList: O schema completo que define a trilha de navegação.
Estrutura:
- breadcrumb: Simples, contém apenas
@id. - BreadcrumbList: Estrutura mais complexa, com
@type,@ideitemListElement.
Uso:
- breadcrumb: Associado a
WebPage. - BreadcrumbList: Definido no mesmo JSON-LD e referenciado via
@id.
Exemplo de relação:
{
"@type": "WebPage",
"breadcrumb": {
"@id": "<identificador único>"
}
}
{
"@type": "BreadcrumbList",
"@id": "<identificador único>",
"itemListElement": [ ... ]
}
O @id conecta os dois schemas.
Resumo
- breadcrumb (referência): Campo simples com
@idque aponta para oBreadcrumbList. - BreadcrumbList: Schema completo com
itemListElement, contendoListItemcomposition,nameeitem. - Relação: O
@idnobreadcrumbdeve corresponder ao@idnoBreadcrumbList.
Boas práticas:
- Use URLs válidas para
itemnoBreadcrumbList. - Mantenha
positionsequencial, começando em 1. - Garanta que o
@idseja único e consistente entre referência e schema completo.
