Blog d'aide à la modification des thèmes sur overblog
21 Février 2012
Lorsque vous affichez une liste d'article, il faut prévoir une pagination pour passer aux pages suivantes et précédentes. Pour cela, 2 variables : Navigation.PreviousPage et Navigation.NextPage
Si vous affichez un article seul, il faut également permettre d'afficher l'article suivant et l'article précédent. Là encore, 2 variables : Navigation.PreviousPost et Navigation.NextPost
Précédent (previous) indique qu'il y a un ou des articles avant, au sens des dates de publication. Suivant (next) indique les articles qui sont publiés après la page courante.
Certains pensent que cet ordre est doit être inverser : pour le changer il suffit d'inverser les textes et/ou les liens.
<!-- Pagination -->
{% if Navigation.PreviousPage is not empty or Navigation.NextPage is not empty
or Navigation.PreviousPost is not empty or Navigation.NextPost is not empty %}
<div class="pagination">
{% if Navigation.PreviousPage is not empty or Navigation.PreviousPost is not empty %}
{% if Navigation.PreviousPage is not empty %}
<a href="{{ Navigation.PreviousPage }}" class="prev">{{ Lang.Get('Previous page') }}</a>
{% elseif Navigation.PreviousPost is not empty %}
<a href="{{ Navigation.PreviousPost.Permalink }}"
class="prev">
{% if Navigation.PreviousPost.Title is not empty %}
{{ Navigation.PreviousPost.Title|truncate(30) }}
{% else %}
{{ Lang.Get('previous post') }}
{% endif %}
</a>
{% endif %}
{% endif %}
{% if Navigation.NextPage is not empty or Navigation.NextPost is not empty %}
{% if Navigation.NextPage is not empty %}
<a href="{{ Navigation.NextPage }}" class="next">{{ Lang.Get('Next page') }}</a>
{% elseif Navigation.NextPost is not empty %}
<a href="{{ Navigation.NextPost.Permalink }}"
class="next">
{% if Navigation.NextPost.Title is not empty %}
{{ Navigation.NextPost.Title|truncate(30) }}
{% else %}
{{ Lang.Get('next post') }}
{% endif %}
</a>
{% endif %}
{% endif %}
</div>
{% endif %}
Explication détaillée :
Ligne 2 : s'il n'y a pas de page suivante / précédente, ou s'il n'y a pas d'article précédent / suivant : on n'affiche pas le bloc de pagination.
Ligne 5 à 18 : s'il y a une page ou un article précédent, on affiche un lien
Ligne 6 à 8 : cas de page précédente
Ligne 8 à 17 : cas de l'article précédent : s'il a un titre, on affiche le titre, ou le texte "previous post" sinon.
Ligne 19 à 32 : s'il y a une page ou un article suivant, on affiche un lien
Ligne 20 à 22 : cas de page suivante
Ligne 22 à 31 : cas de l'article suivant : s'il a un titre, on affiche le titre, ou le texte "next post" sinon.
Pour voir l'affichage, il suffit de regarder cet article : les liens articles suivants et précédents sont affichés en bas de chaque article.