Je travaille avec le constructeur de site statique de Jekyll et je suis d'avoir difficulté à effectuer les éléments suivants:
{% for post in site.categories.test %} <li> <a href="{{ post.url }}"> {{ post.title }}</a></li> {% endfor %}
3 Réponses :
Que diriez-vous ...
{% for category in site.categories %} <h2 id = "{{ category[0] }}"> {{ category[0] }} </h2> <ul> {% for post in site.posts %} {% if post.category == category[0] %} <li> <a href="{{ post.url }}"> {{ post.title }}</a></li> {% endif %} {% endfor %} </ul> <a href="#{{ category[0] }}-ref">↩</a> {% endfor %}
Non? Hmm ... Est-ce que ça vient n'importe où près? Travaille à ma fin.
Il semble se rapprocher, mais il a fait la même chose que la mienne faisait grossièrement - il affiche la quantité appropriée de
votes
{% for post in site.categories.category %}
- OR -
{% for post in site.categories.category[0] %}
Also, I'm not sure why kshep's example doesn't work...
Lorsque vous faites C'est la façon dont le liquide gère l'itération sur les hachages, je crois. p> donc le code que vous recherchez est celui-ci: p> pour la catégorie sur site.Catégories code>,
catégorie [0] code> vous donnera le nom de la catégorie, Li>
catégorie [1] code> vous donnera la liste des messages de cette catégorie. Li>
ul>
{% for category in site.categories %}
<h2 id="{{ category[0] }}-ref">{{ category[0] }}</h2>
<ul>
{% for post in category[1] %}
<li><a href="{{ post.url }}">{{ post.title }}</a></li>
{% endfor %}
</ul>
<p><a href="#{{ category[0] }}-ref">↩</a></p>
{% endfor %}
L'élément
autour de l'ancrage n'est pas nécessaire dans HTML 5.
Bon à savoir. Je préfère y avoir là quand même; Mes règles de CSS pour l'espacement vertical sont plus cohérentes.
Belle réponse, merci. Sauf que tous mes noms de catégorie sont minuscules lors de la sortie de la catégorie [0]
@Christian Vous voulez probablement utiliser capitaliser code>. Voir Stackoverflow.com/Questions/19649009/titleize-Jekyll-Categor Y A >
@ Kikito Oui, c'est ce que j'utilise réellement. Mais malheureusement, cela ne capitalise pas les deux mots (comme dans: "Tech Talk"). Caméliser pour une raison quelconque ne fonctionne pas. Je vais essayer le filtre de jointure avec capitaliser, peut-être que cela aide.