J'ai commencé un blog basé sur Jekyll avec un thème jekyll-now . Je suis nouveau sur Jekyll et son fonctionnement (en particulier Liquid). Je comprends que les nouveaux messages doivent être les suivants: 2014-10-04-Hello-World.md. Mais je ne comprends vraiment pas comment je pourrais les commander.
Ma première pensée est qu'ils commandent par date, donc deux articles à la même date commanderaient au hasard. Mais n'est-ce pas le cas? Existe-t-il un moyen de classer les articles par ordre chronologique. OR au moins avoir une page d'archive de publication?
Il existe un exemple dans la documentation officielle de Jekyll sur la façon de créer une page d'archivage de base:
Affichage d'un index des messages
Bonus: pour une page d'archivage plus jolie (regroupée par année ou année/mois) , voir cette réponse .
Vous avez raison, je ne trouve rien dans les documents où il est dit comment les messages sont ordonnés, mais en fait, Jekyll les ordonne chronologiquement, avec le message le plus récent en premier (vous pouvez le voir si vous essayez les exemples que j'ai liés ci-dessus).
Pour les trier dans l'autre sens (le message le plus ancien en premier), vous pouvez utiliser le mot clé reversed
, selon la documentation Liquid :
{% for post in site.posts reversed %}
Cependant, je ne sais pas comment deux articles à la même date sont commandés, car je n'écris pas autant de messages, donc je n'ai jamais eu ce problème :-)
Vous devez essayer cela vous-même.
Je viens de faire face au même problème et résolu avec cette solution: https://groups.google.com/forum/#!topic/jekyll-rb/8QCIzevauS
Ajoutez un champ de date à la face avant YAML d'un article, comme ceci:
date: 2010-09-15 14:40:45
par exemple. si vous avez 2 messages le 31/12/2014, vous pouvez ajouter date: 2014-12-31 00:30:00
à latest_post.md et date: 2014-12-31 00:10:00
à old_post.md.
Vous pouvez ajouter un fuseau horaire (par exemple date: 2014-12-31 00:10:00 +08:00
) si besoin
Je veux documenter ma lutte dans ce message afin qu'il puisse aider d'autres utilisateurs. Vous devez effectuer deux modifications:
Ensuite, ajoutez le {% assign pages_list = pages_list | sort:"weight" %}
ligne comme indiqué dans le code ci-dessous. Cela triera par poids.
{% for category in site.categories %}
{% if category[0] contains 'Java' %}
<h3 id="{{ category[0] }}-ref">{{ category[0] | join: "/" }}</h3>
<ul>
{% assign pages_list = category[1] %}
{% assign pages_list = pages_list | sort:"weight" %}
{% include JB/pages_list %}
</ul>
{% endif %}
{% endfor %}