Подсчет значения цикла в списке хлебных крошек схемы Джекила - PullRequest
0 голосов
/ 30 июня 2019

Этот вопрос относится к Какие есть хорошие способы реализации хлебных крошек на сайте Jekyll? и мне нужно получить позицию из цикла.<meta itemprop="position" content="">

<nav class="breadcrumbs bootstrap hidden-sm-down">
<ol class="breadcrumb list-unstyled" itemscope itemtype="https://schema.org/BreadcrumbList">
 <li class="breadcrumb-item" itemprop="itemListElement" itemscope
      itemtype="http://schema.org/ListItem"><a itemprop="item" href="/"><span itemprop="name">Home</span></a><meta itemprop="position" content="1"></li>
 {% assign crumbs = page.url | split: '/' %}
 {% assign crumbs_total = crumbs | size | minus: 1 %}
   {% for crumb in crumbs offset: 1 %}
    {% if forloop.index == crumbs_total %}
        <li class="breadcrumb-item active"itemprop="itemListElement" itemscope
      itemtype="http://schema.org/ListItem"><meta itemprop="item" content="{{ site.url }}{{ page.url | relative_url }}"><span itemprop="name">{{ page.crumbtitle }}</span><meta itemprop="position" content=""></li>
    {% else %}
        <li class="breadcrumb-item" itemprop="itemListElement" itemscope
      itemtype="http://schema.org/ListItem"><a itemprop="item" href="{% assign crumb_limit = forloop.index | plus: 1 %}{% for crumb in crumbs limit: crumb_limit %}{{ crumb | append: '/' }}{% endfor %}"><span itemprop="name">{{ crumb | replace:'-',' ' | upcase }}</span></a><meta itemprop="position" content=""></li>
    {% endif %}
  {% endfor %}
</ol>
</nav>

1 Ответ

0 голосов
/ 30 июня 2019

On line # 12 Просто добавьте один. <meta itemprop="position" content="{{ crumbs_total | plus:1 }}"> В строке # 16 уже есть переменная, {% assign crumb_limit = forloop.index | plus: 1 %} Итак, на строке # 18 вам нужно только <meta itemprop="position" content="{{ crumb_limit }}">

{% if page.layout != 'home' %}
<nav class="breadcrumbs bootstrap hidden-sm-down">
<ol class="breadcrumb list-unstyled" itemscope itemtype="https://schema.org/BreadcrumbList">
 <li class="breadcrumb-item" itemprop="itemListElement" itemscope
      itemtype="http://schema.org/ListItem"><a itemprop="item" href="/"><span itemprop="name">Home</span></a><meta itemprop="position" content="1"></li>
 {% assign crumbs = page.url | split: '/' %}
 {% assign crumbs_total = crumbs | size | minus: 1 %}
    {% for crumb in crumbs offset: 1 %}
    {% if forloop.index == crumbs_total %}
        <li class="breadcrumb-item active"itemprop="itemListElement" itemscope
      itemtype="http://schema.org/ListItem"><meta itemprop="item" content="{{ site.url }}{{ page.url | relative_url }}"><span itemprop="name">{{ page.crumbtitle }}</span><meta itemprop="position" content="{{ crumbs_total | plus:1 }}"></li>
    {% else %}
{% assign crumbs_position = 1 %}
        <li class="breadcrumb-item" itemprop="itemListElement" itemscope
      itemtype="http://schema.org/ListItem"><a itemprop="item" href="{% assign crumb_limit = forloop.index | plus: 1 %}{% for crumb in crumbs limit: crumb_limit %}{{ crumb | append: '/' }}{% endfor %}"><span itemprop="name">{{ crumb | replace:'-',' ' | upcase }}</span></a>{% assign crumbs_postion = crumbs_position | plus:1 %}<meta itemprop="position" content="{{ crumb_limit }}"></li>
    {% endif %}
  {% endfor %}
</ol>
</nav>
{% endif %}
...