Articles par saison

Extension de l’article afficher les articles par année ou par saison

But : fournir un calendrier pour réunir tous les articles sur une période assez grande.

Calendrier pour réunir tous les articles sur une période assez grande, inclus une variante avec sélection d’articles par mot clé. Constitue aussi un exemple d’utilisation du plugin Agenda.

Cette contribution est une remise à jour de Afficher les articles par année ou par saison pour SPIP 1.9.

Principales nouveautés

Mise en conformité avec la version SPIP 1.9 (et 1.9.1) ce qui permet l’utilisation du plugin agenda offrant la possibilité de gérer les évenements sur plusieurs jours.

Changement de rendu graphiquement : si un évenement dure plusieurs jours, il sera répété tous les jours que durera l’évenement comme le montre l’exemple suivant :

date Manifestation lieu
vendredi 10 février Vide Grenier Troyes
Samedi 11 février Vide Grenier Troyes
Choucroute du club de 3e age Paris
Dimanche 12 février Tournoi du club de foot Marseille
Vide Grenier Troyes

Autre exemple avec la variante mot clé sur mon site

Possibilité de choisir un ordre chronologique ou inverse.

Comment utiliser cette contribution

Installation classique

Installer SPIP 1.9 ou supérieur ou mettez-vous à jour. Puis installer le plugin agenda 1.9 (pour spip 1.9) ou plugin agenda 1.9.1 (pour spip 1.9.1) ainsi que le plugin widget_calendar

Je vous incite à lire la documentation rattaché à ce plugin
-  Téléchargez archive_longperiode joint à cette contribution
-  Vous décompressez puis vous mettez ces fichiers dans votre répertoire de squelettes. ATTENTION si vous avez déjà un fichier agenda.html essayez de le fusionner avec votre fichier agenda.html.

Ensuite vous pouvez utilisez l’un des 3 squelettes proposées en utilisant les urls :
-  Pour afficher les articles du 4 janvier 2005 au 16 mai 2005
http://example.org/spip.php?page=agenda&annee=2005&mois=01&jour=04&annee_fin=2005&mois_fin=05&jour_fin=16&type=longperiode
-  Pour afficher les articles de la saison 2004-2005 (c’est à dire du 1 septembre 2004 au 31aout 2005)
http://example.org/spip.php?page=agenda&annee=2004&annee_fin=2005&type=saison
-  Pour afficher les articles de l’année 2005
http://example.org/spip.php?agenda&annee=2005&type=annee
-  Si le graphisme ne vous plait pas beaucoup de choses sont modifiables grace au CSS dans agendajob.css

Variante avec mot-clé

Enfin vous pouvez utilisez la variante avec mot clé pour cela téléchargez « archive_longperiode_mot] joint à cette article

On peut sélectionner les articles qui possède un mot-clé qui se trouve dans le groupe de mot clé nommé « type de manifestation » qu’il faudra créer dans votre site SPIP. (Vous pouvez utiliser un autre nom pour le groupe de mots-clé. Copiez ce nom à la place de « type de manifestation » dans agenda_longperiode_mot.html, agenda_saison_mot.html et agenda_annee_mot.html)

Reprenez la même méthodologie que dans le paragraphe installation classique. Pour visualiser ces squelettes utilisez les urls suivantes :
-  Pour afficher les articles du 4 janvier 2005 au 16 mai 2005
http://example.org/spip.php?page=agenda&annee=2005&mois=01&jour=04&annee_fin=2005&mois_fin=05&jour_fin=16&type=longperiode_mot
-  Pour afficher les articles de la saison 2004-2005(c’est à dire du 1 septembre 2004 au 31aout 2005) http://example.org/spip.php?page=agenda&annee=2004&annee_fin=2005&type=saison_mot
-  Pour afficher les articles de l’année 2005
http://example.org/spip.php?agenda&annee=2005&type=annee_mot

Eléments techiques de cette contribution

Cette contribution repose sur 4 filtres
-  agenda_memoV2
-  agenda_memoV2_mot
-  agenda_afficheV2
-  agenda_afficheV2_mot

Les 2 premiers filtres sont une adaptation du filtre agenda_memo introduit à partir de SPIP 1.8.2. permettent d’enregistrer différents éléments sur les articles sélectionnés. Les 2 derniers permettent de générer le code html pour visualiser les articles sélectionnés. Si vous voulez modifier le html généré par cette contrib c’est l’un de ces 2 derniers filtres qu’il faut modifier

À vous de jouer maintenant.

Discussion

2 discussions

  • Interesting post and thanks for sharing. Some things in here I have not thought about before.Thanks for making such a cool post which is really very well written.will be referring a lot of friends about this.Keep blogging .
    Drunk Driving Attorney

    Répondre à ce message

  • 8
    Tophe89

    Débutant en spip, je souhaite utiliser cette contribution sur mon site en version mot-clé. J’ai rentré des mots-clé et modifié les fichiers. Lorsque je demande l’affichage il trouve bien les mots-clé mais j’ai un message m’indiquant qu’il n’a pas trouvé d’articles, pourtant j’ai associé ces mots-clé à des articles (j’ai fait l’essai pour les trois cas, à chaque fois même résultat).

    http://catechese.sensurbain.free.fr/spip.php?page=agenda_longperiode_mot

    Je ne saisis pas tout, avez-vous une idée de la bêtise que je fais, merci par avance.

    • Bonjour,
      il faut que tu installes les fichiers agenda_longperiode_mot_fonctions.php, agenda_longperiode_mot.html, agendajob.css et agenda.html qui est un fichier modifié par rapport au fichier agenda.html de la dist
      puis pour selectionner tous les evenements entre le 1 avril 2005 et le 16 mai 2005 il faut saisir l’url suivante.

      http://catechese.sensurbain.free.fr/spip.php?page=agenda&annee=2005&mois=01&jour=04&annee_fin=2005&mois_fin=05&jour_fin=16&type=longperiode_mot

      de plus pour utiliser cette contribution il faut utiliser le plugin agenda

      A+
      Job

    • Merci beaucoup pour votre réponse, grâce à vous j’ai progréssé.
      J’arrive à obtenir la liste des événements :
      http://catechese.sensurbain.free.fr/spip.php?page=agenda&annee=2007&annee_fin=2008&type=saison_mot

      Parcontre si je clique sur une rubrique dans le menu de gauche pour obtenir uniquement la liste des événements relatifs à celle-ci je tombe sur une page d’erreur.

    • Bonjour,

      bien vu il y a un bug, (ou plutot une modification personnel pour mon site).
      Pour corriger cela il faut modifier le squelette agenda_saison_mot.html et remplacer

      <li>
      <a href="agenda_saison_[(#ENV{annee})]-[(#ENV{annee_fin})].html?typemot=#TITRE">
      #TITRE</a>
      </li>

      par

      <li>
      <a href="spip.php?page=agenda&annee=[(#ENV{annee})]&annee_fin=(#ENV{annee_fin})]&typemot=#TITRE">
      #TITRE</a>
      </li>

      Ca devrait résoudre le probleme

      Merci pour le retour
      A+
      Job

    • Bonjour,

      Je viens de m’apercevoir qu’il manquait un crochet dans mon dernier message
      le bon code est le suivant

      <a href="spip.php?page=agenda&annee=[(#ENV{annee})]&annee_fin=[(#ENV{annee_fin})]&typemot=#TITRE">
      #TITRE</a>
      </li>

      A+
      Job

    • Merci pour l’information, grace à votre ligne de code, lorsque je clique sur une rubrique j’arrive sur ce type de page http://catechese.sensurbain.free.fr/spip.php?page=agenda&annee=2007&annee_fin=2008&typemot=Eveil%20à%20la%20foi
      Je n’obtiens pas le résultat attendu comme sur votre site.

      @+

    • Bonjour,

      Je viens encore de trouver une erreur il manquait &type=saison_mot
      La ligne de code a ajouté est la suivante

      <a href="spip.php?page=agenda&annee=[(#ENV{annee})]&annee_fin=[(#ENV{annee_fin})]&type=saison_mot&typemot=#TITRE">
      #TITRE</a>
      </li>

      Cette fois-ci je crois que c’est bon
      A+
      job

    • Cette fois-ci, ça fonctionne. Mille fois merci.
      J’ai plus qu’un petit souci, quand je clique sur une rubrique (colonne de droite du tableau)il me renvoit sur la bonne page, mais il prend plus en compte une partie de mon squelette. Je vais regarder coté css.

      @+

    • Bonjour,je vous sollicite à nouveau, j’ai deux problèmes :

      1/ Lorsque je demande l’agenda saison, il liste les évenements jusqu’a decembre et non jusqu’a aout de l’année suivante.

      2/ Pour deux rubriques (servants d’autel, scout de france) j’ai le message suivant

      Warning : array_push() [function.array-push] : First argument should be an array in /mnt/161/sdb/8/d/catechese.sensurbain/plugins/agenda_1_9_2/agenda_saison_mot_fonctions.php on line 274

      malgré avoir saisit des événements comme pour les autres rubriques.

    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 :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

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.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom