К основному контенту

Паттерн · TypeScript

BreadcrumbList в JSON-LD для внутренних страниц

Единый хелпер для хлебных крошек в разметке, согласованный с UI.

·

Уровень: базовыйОценка времени: ~15 мин

Один массив данных кормит и Breadcrumb, и itemListElement в JSON-LD — без рассинхрона имён и URL.

  • Совпадение порядка снижает риск ошибок в rich results
  • объект готов для вставки в @graph
  • после смены маршрутов прогоните валидатор

Хлебные крошки в интерфейсе и в application/ld+json должны совпадать по порядку и названиям.

Код

export function buildBreadcrumbListLd(items: { name: string; url: string }[]) {
  return {
    '@type': 'BreadcrumbList' as const,
    itemListElement: items.map((item, index) => ({
      '@type': 'ListItem' as const,
      position: index + 1,
      name: item.name,
      item: item.url,
    })),
  }
}

Проверка

  • В UI и в JSON-LD одинаковые подписи пунктов и канонические URL со слэшем в конце, если так принято на сайте.
  • Rich Results Test / валидатор Schema.org без ошибок по ListItem.

Первоисточники

Нужно внедрить под ваш домен и стек?

Короткая форма: имя, телефон и сайт. После отправки — ответ с порядком работ и ориентиром по этапам; задачу уточняют при контакте.