2017-07-04 5 views
0

Je souhaite donc configurer une boucle for dans Jekyll qui affiche uniquement le dernier événement/élément de la collection. (Organisé par date)Jekyll For Loop Questions

Actuellement, cela ne fait pas grand-chose à part trier la date en poids et faire défiler la collection avec une limite de un.

{% assign sorted_events = site.events | sort: "date" %} 
    {% for event in sorted_events limit:1 %} 
    <section class="venue-info wow fadeIn" data-wow-duration="1.2s" id="about"> 
     <div class="upcoming-event"> 
      <h1>Our Next Event</h1> 
     <h2>{{ event.title }}</h2> 
     <p>{{ event.description }}</p> 
     <a class="btn scroll" href="{{ event.url }}">Learn More</a> 
     </div> 
    {% endfor %} 
+0

Quelle est la question? – marcanuy

+0

Comment puis-je l'organiser par date, il l'indique dans la question. –

+1

Comment sont définies vos dates? Un élément de la collection à titre d'exemple serait utile. – marcanuy

Répondre

0

Prendre {{site.post}} comme la collection pour cet exemple, nous trions la collecte de messages, puis utiliser la dernière balise pour obtenir le dernier élément du tableau.

  • Pour obtenir le plus récent message:

    {% assign newest = site.posts | sort: "date" | last %} 
    
    {{newest.title}} 
    {{newest.date}} 
    
  • le plus ancien poste:

    {% assign oldest = site.posts | sort: "date" | first %} 
    
    {{oldest.title}} 
    {{oldest.date}} 
    

Il devrait fonctionner pour toute autre collection comme site.events comme votre code se réfère.