Aller au contenu

[spip] les prochains événements


Raphael

Sujets conseillés

Bonjour à tous,

Je débute sur spip depuis avant-hier et je cale sur un problème certainement courant.

J'aimerais avoir une rubrique Agenda, où ne seraient affichés que les X prochaines manifestations, un peu comme ici : http://www.ville-carbonne.fr/rubrique.php3?id_rubrique=46

Mes questions sont multiples :

- comment gérer les post-datages pour y parvenir ?

- comment isoler ces événements par rapport à la date courante ? (en clair, ma rubrique Agenda ne doit afficher QUE les prochains événements)

- comment éviter que ces événements n'apparaissent également sur les autres rubriques ? (exemple : mon sommaire est censé afficher le dernier article publié, or, il m'affiche aussi mon article post daté même si la date est supérieure à aujourd'hui : http://www.alsacreations.com/spip

Je suis piètre programmeur PHP, donc si vous avez une solution, merci de l'adapter à mon niveau ;)

Modifié par Sibelius
Lien vers le commentaire
Partager sur d’autres sites

Salut Sibelius,

Pas besoin d'être expert Php pour cela, vu que les boucles Spip permettent ce que tu veux faire.

Il faut d'abord que tu autorises la publication des articles post-datés (dans l'admin) et ensuite que tu ajoutes une boucle ARTICLE avec la balise {age} dans ton fichier squelette, comme par exemple :

<BOUCLE_art(ARTICLES){age<0}{par date}{0,10}>
<!-- ici ton code habituel pour afficher les titres, auteurs, dates, etc... -->
</BOUCLE_art>

L'âge est < 0 si la date est dans le futur.... tu limites le nombre d'articles en mettant {0,10} comme dans l'exemple, pour afficher les 10 premiers articles.

L'info sur les critères communs à toutes les boucles se trouve à http://www.spip.net/fr_article900.html

Lien vers le commentaire
Partager sur d’autres sites

- comment gérer les post-datages pour y parvenir ?

- comment isoler ces événements par rapport à la date courante ? (en clair, ma rubrique Agenda ne doit afficher QUE les prochains événements)

- comment éviter que ces événements n'apparaissent également sur les autres rubriques ? (exemple : mon sommaire est censé afficher le dernier article publié, or, il m'affiche aussi mon article post daté même si la date est supérieure à aujourd'hui : http://www.alsacreations.com/spip

moi qui suis encore moins experte que toi, mes potes m'ont souvent recommandé d'utiliser "doublon" dans mes boucles. (Perso, dans ma rubrique agenda, je ne l'utilise pas). Très chouette ton site :up:

Connaissais pas Carbonne :blush:

Modifié par Magali
Lien vers le commentaire
Partager sur d’autres sites

Il y'a quelque chose qui manque dans spip pour gérer proprement un agenda : une "date de fin de validité"...

Le critère "age" permet de faire disparaître les évènements dès qu'ils atteignent un age choisi uniformément quel que soit l'article (exemple : 7 jours).

Mais comment faire disparaître un article donné le lendemain à minuit de la fin de l'évènement ? Cela induit une règle différente pour chaque article.

Jusqu'à la version 1.7.2 : rien n'était prévu. J'ai donc bidouillé spip pour rajouter un champ date supplémentaire, et un critère "age_valid" qui compare la date système à la date à laquelle l'évènement doit disparaître (age_valid < 0 pour que l'article soit valide)

Dans la version 1.7.2, un champ date supplémentaire a été ajouté, que j'utilise dorénavant comme date de fin de validité : il s'agit du champ "date de publication antérieure". Le critère "age_redac" peut-être utilisé dans ce contexte, mais à l'envers du système proposé.

Dans 1.7.2, on peut passer aussi la date en paramètre dans l'url, et créer une boucle qui utilise le critère "age_relatif", ce qui est sympa et ouvre bien des possibilités.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...