Sur la base du squelette de la distribution de spip, nous afficherons les articles “dans la même rubrique” par année scolaire en ajoutant une pagination suivant précédent de type 2005/2006 2007/2008.
Il s’agit de créer nos délimiteurs temps, soit deux dates, à placer dans la boucle article_principal :
[(#_article_principal:DATE|mois|<{8}|?{#SET{annee_apres,#_article_principal:DATE|annee}, #SET{annee_apres,#_article_principal:DATE|annee|plus{1}}})]
[(#_article_principal:DATE|mois|<{8}|?{#SET{annee_avant,#_article_principal:DATE|annee|moins{1}}, #SET{annee_avant,#_article_principal:DATE|annee}})]
Ces deux variables annee_apres et annee_avant, comme leur nom l’indique, servent à obtenir l’année avant celle de l’article consulté et celle d’après.
La partie “dans la même rubrique”.
Nous allons ici récupérer tous les articles dans l’année scolaire en cours, soit de début aôut à fin juillet.
<ul>
<BOUCLE_articles_rubrique(ARTICLES) {id_rubrique} {date>(#GET{annee_avant})-08-01} {date<(#GET{annee_apres})-07-31} {par date}{inverse}>
<li>
<a href="[(#URL_ARTICLE)]"[ class="(#EXPOSE)"]>[(#TITRE)]</a>
</li>
</BOUCLE_articles_rubrique>
</ul>
Nous y ajoutons :
- la pagination suivante
<BOUCLE_navigation_annee_suivante(ARTICLES) {id_rubrique} {id_article!=56} {date>(#GET{annee_apres})-08-01} {par date} {0,1}>
<a href="#URL_ARTICLE">[(#GET{annee_apres})]/[(#GET{annee_apres}|plus{1})]</a>
</BOUCLE_navigation_annee_suivante>
- et la pagination précédente
<BOUCLE_articles_annee_precedente(ARTICLES) {id_rubrique} {id_article!=56} {date<(#GET{annee_avant})-07-31} {par date} {inverse} {0,1}>
<a href="#URL_ARTICLE">[(#GET{annee_avant}|moins{1})]/[(#GET{annee_avant})]</a>
</BOUCLE_articles_annee_precedente>
Discussions par date d’activité
4 discussions
Bonjour et merci pour cette super contrib !
j’aimerai l’utiliser dans une page rubrique (et non une page article), je sens qu’il faut modifier les « délimiteurs de temps » (annee_avant et annee_apres) pour partir de la date courante, mais je trouve pas comment faire.
Merci d’avance !
Répondre à ce message
Merci, je vais regarder cela de plus près. Si je trouve une solution, je la posterai ici.
Répondre à ce message
Bonjour,
je n’ai pas approfondi dans cette voie, mais je crois que vous devriez vous orienter vers la méthode des « modèles » ou « noisettes » qui servent à inclure plus nativement certains bouts de squelette au sein du vôtre.
Répondre à ce message
Bonjour,
J’utilise votre astuce dans le plan du site d’une école maternelle. Cà fonctionne super alors, tout d’abord : merci !
Ma question est la suivante : si je souhaite utiliser ce filtre dans tout mon site sauf dans une page d’archives, est-ce que je dois répéter la déclaration des variables dans chaque fichier squelette ou est-ce qu’on peut les déplacer à un niveau supérieur (et dans ce cas, où ? + quelle est la syntaxe ?).
Merci beaucoup !
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |