- Por qué el breadcrumb importa
- Tipos de breadcrumb
- Cuándo usar breadcrumb y cuándo no
- La relación entre breadcrumb y URL
- Implementación con datos estructurados
- CSS para breadcrumbs
- Para profundizar
El breadcrumb (literalmente “miga de pan”, en referencia al cuento de Hansel y Gretel) es el elemento de navegación que muestra al usuario su posición actual dentro de la jerarquía del sitio, presentado como una secuencia de enlaces desde la raíz hasta la página actual.
Es uno de los elementos de navegación más útiles en sitios con jerarquías profundas y uno de los que más información aporta sobre la calidad de la arquitectura subyacente: si el breadcrumb no puede construirse de forma coherente, la arquitectura tiene un problema.
Por qué el breadcrumb importa
Orientación: El breadcrumb responde en todo momento a la pregunta “¿dónde estoy?”. En páginas a las que el usuario ha llegado directamente (desde un buscador, desde un enlace externo), sin haber navegado desde la portada, el breadcrumb es el único elemento que le sitúa dentro de la estructura del sitio.
Navegación ascendente: El breadcrumb permite al usuario subir por la jerarquía sin tener que volver a la portada. Desde un artículo específico, puede ir a la sección o a la categoría con un solo clic.
Señal de estructura: El breadcrumb visibiliza la arquitectura del sitio. Si la arquitectura está bien diseñada, el breadcrumb es coherente y tiene sentido. Si la arquitectura tiene problemas, el breadcrumb lo revela: rutas demasiado largas, jerarquías incoherentes, contenidos sin posición clara.
Resultados enriquecidos: Con el marcado Schema.org correcto, Google puede mostrar el breadcrumb directamente en los resultados de búsqueda, reemplazando la URL completa por la ruta de navegación. Esto hace el resultado más legible y más informativo.
Tipos de breadcrumb
Breadcrumb jerárquico (el más habitual)
Refleja la posición del contenido en la jerarquía del sitio. Cada nivel de la ruta es un enlace a la página de ese nivel.
Inicio > Fundamentos > Jerarquía vs. Taxonomía
En HTML semántico:
<nav aria-label="Breadcrumb">
<ol>
<li><a href="/">Inicio</a></li>
<li><a href="/fundamentos/">Fundamentos</a></li>
<li aria-current="page">Jerarquía vs. Taxonomía</li>
</ol>
</nav>
El uso de <ol> (lista ordenada) es semánticamente correcto: el breadcrumb es una secuencia ordenada. El atributo aria-current="page" en el último elemento indica a los lectores de pantalla que es la página actual.
Breadcrumb de atributos (navegación facetada)
Muestra los filtros aplicados en una navegación facetada. Es habitual en tiendas y catálogos.
Inicio > Tienda > [Color: Azul] > [Talla: M]
Los elementos entre corchetes son filtros activos que el usuario puede eliminar individualmente.
Breadcrumb de historial de navegación
Refleja el camino que el usuario ha recorrido en esa sesión. Es menos habitual y más problemático: el camino navegado puede ser no lineal y confuso, y no refleja la estructura del sitio sino el comportamiento del usuario.
Cuándo usar breadcrumb y cuándo no
Usar breadcrumb:
- En sitios con más de dos niveles de jerarquía.
- En cualquier página que no sea la portada.
- En sitios donde los usuarios llegan frecuentemente a páginas internas desde buscadores o enlaces externos.
No usar breadcrumb (o usarlo con cautela):
- En la portada: la portada no tiene posición en la jerarquía porque es la raíz.
- En sitios de una sola capa (sin jerarquía real): si todas las páginas están al mismo nivel, el breadcrumb solo muestra “Inicio > Página actual”, lo que aporta muy poco.
- En flujos de proceso (checkout, formularios multipaso): en estos contextos, el breadcrumb de proceso (paso 1 de 3) es más útil que el jerárquico.
La relación entre breadcrumb y URL
En una arquitectura bien diseñada, el breadcrumb y la URL deben ser coherentes. Si la URL es /formacion/cursos/wordpress/taxonomias/, el breadcrumb debería ser Inicio > Formación > Cursos > WordPress > Taxonomías.
Cuando esta coherencia no existe —el breadcrumb muestra una ruta diferente a la que sugiere la URL— hay un problema de arquitectura. Las causas habituales:
- El contenido tiene una URL plana (
/taxonomias-en-wordpress/) pero el breadcrumb intenta reflejar una jerarquía que no está en la URL. - La URL incluye un segmento de categoría que se puede cambiar sin cambiar la URL real del contenido.
- El CMS genera breadcrumbs basados en la categoría principal del contenido, que puede ser distinta del segmento de URL.
La coherencia entre URL y breadcrumb es una señal de que la arquitectura es consistente. La incoherencia es una señal de que hay deuda técnica.
Implementación con datos estructurados
El marcado Schema.org para breadcrumbs (BreadcrumbList) permite que Google los muestre en los resultados de búsqueda:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Inicio",
"item": "https://www.arquitecturadelainformacion.es/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Navegación",
"item": "https://www.arquitecturadelainformacion.es/navegacion/"
},
{
"@type": "ListItem",
"position": 3,
"name": "Breadcrumbs"
}
]
}
</script>
El último elemento no necesita la propiedad item (ya que es la página actual). Los demás sí deben tenerla con la URL completa.
En WordPress: Los plugins de SEO (Yoast, Rank Math) generan automáticamente el marcado Schema.org del breadcrumb si el tema muestra un breadcrumb. Yoast también tiene su propia función de breadcrumb (yoast_breadcrumb()) que genera tanto el HTML semántico como los datos estructurados.
CSS para breadcrumbs
Un breadcrumb usable necesita separadores visuales claros entre niveles y debe colapsar correctamente en pantallas pequeñas:
.breadcrumb {
display: flex;
flex-wrap: wrap;
list-style: none;
padding: 0;
margin: 0;
font-size: 0.875rem;
}
.breadcrumb li + li::before {
content: "›";
padding: 0 0.5rem;
color: #666;
}
.breadcrumb [aria-current="page"] {
color: #333;
font-weight: 500;
}
.breadcrumb a {
color: #0066cc;
text-decoration: none;
}
.breadcrumb a:hover {
text-decoration: underline;
}