custom/plugins/LoyxxRichBreadcrumb/src/Resources/views/storefront/layout/breadcrumb.html.twig line 1

Open in your IDE?
  1. {% sw_extends '@Storefront/storefront/layout/breadcrumb.html.twig' %}
  2. {% block layout_breadcrumb_list %}
  3.     {% set breadcrumbProduct = context.extensions.breadcrumbProduct.product %}
  4.     <ol class="breadcrumb"
  5.             {% if not config('LoyxxRichBreadcrumb.config.useJsonLd')  and breadcrumbCategories|length  %}
  6.                 itemscope
  7.                 itemtype="https://schema.org/BreadcrumbList"
  8.             {% endif %}
  9.     >
  10.         {% block component_home_breadcrumb_url %}
  11.             {% if context.extensions.breadcrumb.showHomePageLink %}
  12.                 <li class="breadcrumb-item"
  13.                     {% if  context.extensions.breadcrumb.uri is same as('/') %}aria-current="page"{% endif %}
  14.             {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}
  15.                     itemprop="itemListElement"
  16.                     itemscope
  17.                     itemtype="https://schema.org/ListItem"
  18.             {% endif %}
  19.                 >
  20.                     <a href="{{ context.extensions.breadcrumb.host }}"
  21.                        class="breadcrumb-link {% if context.extensions.breadcrumb.uri is same as('/') %} is-active {% endif %}"
  22.                             {% if not config('LoyxxRichBreadcrumb.config.disableLinkTitle') %}
  23.                                 title="{{ context.extensions.breadcrumb.homeLabel ? context.extensions.breadcrumb.homeLabel : "loyxx.rich-breadcrumb.label.home" | trans }}"
  24.                             {% endif %}
  25.                             {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}itemprop="item" {% endif %}>
  26.             {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}
  27.                         <link itemprop="url"
  28.                               href="{{ context.extensions.breadcrumb.uri }}"/>
  29.                         <meta itemprop="position" content="1"/>
  30.             {% endif %}
  31.                         <span class="breadcrumb-title" {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %} itemprop="name" {% endif %}>
  32.                         {% if context.extensions.breadcrumb.homeLabel %}
  33.                             {{ context.extensions.breadcrumb.homeLabel }}
  34.                         {% else %}
  35.                             {{ "loyxx.rich-breadcrumb.label.home" | trans }}
  36.                         {% endif %}
  37.                             </span>
  38.                     </a>
  39.                 </li>
  40.                 {% if context.extensions.breadcrumb.uri is not same as('/') %}
  41.                     {% sw_include '@LoyxxRichBreadcrumb/storefront/layout/breadcrumb-separator.html.twig' ignore missing %}
  42.                 {% endif %}
  43.             {% endif %}
  44.         {% endblock %}
  45.         {% for breadcrumbCategory in breadcrumbCategories %}
  46.             {% set key = breadcrumbCategory.id %}
  47.             {% set name = breadcrumbCategory.translated.name %}
  48.             {% block layout_breadcrumb_list_item %}
  49.                 {% set hideLastLink = breadcrumbProduct is empty and breadcrumbKeys|last is same as (key)  and config('LoyxxRichBreadcrumb.config.disableLinkForLastItem') %}
  50.             <li class="breadcrumb-item"
  51.                 {% if key is same as(categoryId) and breadcrumbProduct is empty %}aria-current="page"{% endif %}
  52.                     {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}
  53.                         itemprop="itemListElement"
  54.                         itemscope
  55.                         itemtype="https://schema.org/ListItem"
  56.                     {% endif %}
  57.             >
  58.                 {% if breadcrumbCategory.type == 'folder' %}
  59.                     <div>{{ name }}</div>
  60.                 {% else %}
  61.                     <{{ hideLastLink ? 'strong' : 'a' }}
  62.                     {% if not config('LoyxxRichBreadcrumb.config.disableLinkTitle') %}
  63.                         title="{{ name }}"
  64.                     {% endif %}
  65.                     {% if not hideLastLink %}
  66.                         href="{{ category_url(breadcrumbCategory) }}"
  67.                     {% endif %}
  68.                     class="breadcrumb-link {% if key is same as(categoryId)  and breadcrumbProduct is empty %} is-active{% endif %}"
  69.                     {% if category_linknewtab(breadcrumbCategory) %}target="_blank"{% endif %}
  70.                     {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %} itemprop="item" {% endif %}>
  71.                     {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}
  72.                         <link itemprop="url"
  73.                               href="{{ category_url(breadcrumbCategory) }}"/>
  74.                         <meta itemprop="position" content="{{ breadcrumbCategory.id }}"/>
  75.                     {% endif %}
  76.                     <span class="breadcrumb-title"
  77.                           {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}itemprop="name"{% endif %}>{{ name }}</span>
  78.                     </{{ hideLastLink ? 'strong' : 'a' }}>
  79.                 {% endif %}
  80.                 </li>
  81.             {% endblock %}
  82.             {% block layout_breadcrumb_placeholder %}
  83.                 {% if key != breadcrumbKeys|last %}
  84.                     {% sw_include '@LoyxxRichBreadcrumb/storefront/layout/breadcrumb-separator.html.twig' ignore missing %}
  85.                 {% endif %}
  86.             {% endblock %}
  87.             {% if key is same as(breadcrumbKeys|last) and config('LoyxxRichBreadcrumb.config.showProductCount') and breadcrumbProduct is empty %}
  88.                 {# @var blockCollection \Shopware\Core\Content\Cms\Aggregate\CmsSlot\CmsSlotCollection #}
  89.                 {% set slotCollection = page.cmsPage.sections.blocks.slots %}
  90.                 {# @var productListing \Shopware\Core\Content\Cms\Aggregate\CmsSlot\CmsSlotEntity #}
  91.                 {% set productListing = null %}
  92.                 {# @var slot \Shopware\Core\Content\Cms\Aggregate\CmsSlot\CmsSlotEntity #}
  93.                 {% for slot in slotCollection %}
  94.                     {% if slot.type is same as('product-listing') %}
  95.                         {% set productListing = slot %}
  96.                     {% endif %}
  97.                 {% endfor %}
  98.                 {% if productListing is defined and productListing.data.listing.total %}
  99.                     <a href="#" class=""
  100.                        onclick="return false;">&nbsp;({{ productListing.data.listing.total | number_format }}  {{ ("loyxx.rich-breadcrumb.label." ~ (productListing.data.listing.total > 1 ? "items" : "item" )) | trans }}
  101.                         )</a>
  102.                 {% endif %}
  103.             {% endif %}
  104.         {% endfor %}
  105.         {% if context.extensions.breadcrumb.showProductTitle and breadcrumbProduct %}
  106.             {% sw_include '@LoyxxRichBreadcrumb/storefront/layout/breadcrumb-separator.html.twig' ignore missing %}
  107.         <li class="breadcrumb-item"
  108.             aria-current="page"
  109.                 {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}
  110.                     itemprop="itemListElement"
  111.                     itemscope
  112.                     itemtype="https://schema.org/ListItem"
  113.                 {% endif %}
  114.         >
  115.             <{{ config('LoyxxRichBreadcrumb.config.disableLinkForLastItem') ? 'strong' : 'a' }}
  116.             {% if not hideLastLink %}
  117.                 href="{{ seoUrl('frontend.detail.page', { productId: breadcrumbProduct.id }) }}"
  118.             {% endif %}
  119.             class="breadcrumb-link is-active"
  120.             {% if not config('LoyxxRichBreadcrumb.config.disableLinkTitle') %}
  121.                 title="{{ breadcrumbProduct.translated.name }}"
  122.             {% endif %}
  123.             {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}itemprop="item" {% endif %}>
  124.             {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %}
  125.                 <link itemprop="url"
  126.                       href="{{ seoUrl('frontend.detail.page', { productId: breadcrumbProduct.id }) }}"/>
  127.             {% endif %}
  128.             <meta itemprop="position" content="{{ breadcrumbProduct.id }}"/>
  129.             <span class="breadcrumb-title" {% if not config('LoyxxRichBreadcrumb.config.useJsonLd') %} itemprop="name"{% endif %}>{{ breadcrumbProduct.translated.name }}</span>
  130.             </{{ config('LoyxxRichBreadcrumb.config.disableLinkForLastItem') ? 'strong' : 'a' }}>
  131.             </li>
  132.         {% endif %}
  133.     </ol>
  134. {% endblock %}