Schema.org для хлебных крошек

Дубовской Александр
Team lead

Что интересно - много типов контента не нужно индивидуально размечать. Есть какие-то элементы UI, которые очень стандартны и требуют просто один раз указать нужную разметку, которая подойдет для всех (99,99%) проектов. Ниже - содержимое breadcrumb.html.twig, которое вы можете поместить в свою стандартную тему и забыть об этом в новых проектах

{#
/**
 * @file
 * Theme override for a breadcrumb trail.
 *
 * Available variables:
 * - breadcrumb: Breadcrumb trail items.
 */
#}
{% if breadcrumb %}
  <nav class="breadcrumb" role="navigation" aria-labelledby="system-breadcrumb">
    <h2 id="system-breadcrumb" class="visually-hidden">{{ 'Breadcrumb'|t }}</h2>
    <ol itemscope itemtype="http://schema.org/BreadcrumbList">
    {% for item in breadcrumb %}
      <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
        {% if item.url %}
          <a itemprop="item" href="{{ item.url }}"><span itemprop="name">{{ item.text }}</span></a>
          <meta itemprop="position" content="{{ loop.index }}" />
        {% else %}
          {{ item.text }}
        {% endif %}
      </li>
    {% endfor %}
    </ol>
  </nav>
{% endif %}