SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 249 visiteurs en ce moment

Accueil > Dates, calendriers et agendas > Plugin Agenda > Afficher les articles par année ou par saison (Archive)

Afficher les articles par année ou par saison (Archive)

15 octobre 2005 – par job – 16 commentaires

1 vote

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

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

Etant utilisateur depuis quelque temps de l’agenda annuel proposé dans le squelette d’Epona. J’ai voulu profiter du nouveau critère agenda développé dans SPIP 1.8.2 afin d’éliminer le code php présent dans l’ancien squelette et ainsi permettre une mise en cache.

Premier cas


J’ai découpé cette contrib en deux parties l’une qui permet d’afficher tous les articles durant une période reposant sur les critères agenda et periode de la boucle articles.
Exemple : tous les évènements de l’année 2005 sur mon site

Elle est composé des fichiers :

  • agenda.css
  • agenda.html
  • agenda_annee_fonctions.php3
  • agenda_annee.html
  • agenda_longperiode_fonctions.php3
  • agenda_longperiode.html
  • agenda_saison_fonctions.php3
  • agenda_saison.html

agenda.html

Le fichier agenda_longperiode.html est une légère variante de agenda_periode.html de SPIP en changeant agenda_affiche_annuel par agenda_affiche comme vous le montre la suite :

Les fichiers agenda_annee.html, agenda_saison.html sont de légères variantes de agenda_longperiode.html.

Les fichiers agenda_annee_fonctions.php3, agenda_longperiode_fonctions.php3, agenda_saison_fonctions.php3 sont identiques et sont le coeur de cette contrib.
Essentiellement la fonction agenda_affiche_annuel qui permet de restituer les articles mémorisés gràce aux filtres agenda_memo sur forme d’une liste.

Ensuite vous pouvez modifier l’aspect visuel en modifiant le fichier agenda.css. Il existe deux archives annee_date.zip et anne_date_redac.zip. Personnellement j’utilise la deuxième archive qui utilise la date de publication antérieure des articles.

Deuxième Partie

Le second a en plus un classement par mot clé présent dans le squelette Epona. On peut sélectionner les évenement dans le groupe de mot clé nommé « type de manifestation ».
Exemple : tous les évènements de l’année 2005 sur mon site
Elle est composé des fichiers :

  • agenda.css
  • agenda.html
  • agenda_annee_mot_fonctions.php3
  • agenda_annee_mot.html
  • agenda_longperiode_mot_fonctions.php3
  • agenda_longperiode_mot.html
  • agenda_saison_mot_fonctions.php3
  • agenda_saison_mot.html

agenda.html est le meme dans toutes les archives.

agenda_longperiode_mot.html

agenda_longperiode_mot_fonctions.php3

De meme que dans la première partie il y a deux versions l’une où l’on utilise la date de publication de l’article l’autre où l’on utilise la date de publication antérieure.

Comment utiliser cette contribution

Cette contribution nécessite SPIP 1.8.2
Téléchargez une des 4 archives, puis décompressez la dans votre dossier squelette.
Vous ferez les appels aux différents agenda en utilisant les urls suivantes.
Pour les archives annee_date et annee_date_redac les urls à utiliser sont :

  • Pour afficher les articles du 4 janvier 2005 au 16 mai 2005
    votresite.com/agenda.php3 ?annee=2005&mois=01&jour=04&annee_fin=2005&mois_fin=05&jour=16&type=longperiode
  • Pour afficher les articles de la saison 2004-2005(c’est à dire du 1 septembre 2004 au 31 aout 2005)
    votresite.com/agenda.php3 ?annee=2004&annee_fin=2005&type=saison
  • Pour afficher les articles de l’année 2005
    votresite.com/agenda.php3 ?annee=2005&type=annee

Pour les archives annee_mot_date et annee_mot_date_redac les urls à utiliser sont :

  • Pour afficher les articles du 4 janvier 2005 au 16 mai 2005
    votresite.com/agenda.php3 ?annee=2005&mois=01&jour=04&annee_fin=2005&mois_fin=05&jour=16&type=longperiode_mot
  • Pour afficher les articles de la saison 2004-2005(c’est à dire du 1 septembre 2004 au 31 aout 2005)
    votresite.com/agenda.php3 ?annee=2004&annee_fin=2005&type=saison_mot
  • Pour afficher les articles de l’annee 2005
    votresite.com/agenda.php3 ?annee=2005&type=annee_mot

Ps : Si vous trouvez que les agendas générés possèdent des couleurs horribles, c’est normal vous avez bon gout, pour en changer modifier agenda.css.

Dernière modification de cette page le 12 mai 2012

Retour en haut de la page

Vos commentaires

  • Le 29 avril 2008 à 12:50, par zil En réponse à : pas d’affichage si pas d’heure

    Désolé, je n’ai pas mis mon message au bon endroit, je recommence

    Bonjour, je n’ai pas d’affichage des évenements si par exemple je ne mets pas d’heure et que l’évenement est sur une journée...

    par exemple,

    2008-05-12 00:00:00 2008-05-12 00:00:00 « bla bla bla »

    ne marche pas

    alors que

    2008-05-12 00:00:00 2008-05-13 00:00:00 « bla bla bla »

    affiche l’evenement sur la journée du 12 mai

    est ce normal ??? merci

    Zil...

    • Le 29 avril 2008 à 20:08, par Job En réponse à : pas d’affichage si pas d’heure

      Bonjour,

      As-tu lus cet article :
      http://www.spip-contrib.net/Extensi...

      C’est la remise a jour de cet article pour spip 1.9 et plus.
      Sinon quelle version de spip utilises-tu ?
      As-tu une url a proposer

      A+
      Job

    • Le 29 avril 2008 à 21:35, par zil... En réponse à : pas d’affichage si pas d’heure

      merci pour la réponse,
      j’utilise bien agenda191, j’ai meme un agenda192 !!!

      j’ai pas d’url encore, le site n’est pas sortit ...

      et j’ai spip192
      voila,
      merci encore

      Zil...

    • Le 29 avril 2008 à 22:02, par Job En réponse à : pas d’affichage si pas d’heure

      bonjour,

      Je regarderais ca plus en détail ce WE. personnellement je n’utilise pas les heures pour les evenement (cad je décoche la case horaire ) donc ca me surprend. (l’inverse c’est a dire que lorsque l’on donne des heures aux evenements la contrib ne marche plus m’aurais moi surpris )

      Bon courage et a+
      Job

    • Le 29 avril 2008 à 22:29, par zil... En réponse à : pas d’affichage si pas d’heure

      bien mais justement moi non plus je n’utilise pas les heures
      mais je ne décoche pas la case car je mets les événements avec Saisie rapide d’une liste
      sinon je ne peux pas faire autrement, j’ai un chevauchement de cadre qui m’empêche d’utiliser le formulaire, autre problème

      dans ma base mysql, il y a « non » pour la colonne heure et elles sont donc notées 00:00:00

      merci en tout cas
      Zil...

    Répondre à ce message

  • Le 21 mars 2006 à 11:14, par Mortas En réponse à : Afficher les articles par année ou par saison

    Bonjour, déjà bravo pour cette contrib^^et ensuite ma question, j’ai lut votre réponse au post précèdent, mais cela ne me convient pas. Comment faire pour que seul l’année en cours s’affiche ? Un exemple, dans mon cas je dois faire un calendrier pour l’académie de Toulouse, il me faut donc configurer l’affichage de septembre à Juillet et cela pour l’année 2005 et 2006, et une fois cette année passé il faut effacé les précèdent et recommencé pour l’année 2006-2007, comment faut-il faire ?

    • Le 21 mars 2006 à 22:13, par job En réponse à : Afficher les articles par année ou par saison

      Comment faire pour que seul l’année en cours s’affiche ? Un exemple, dans mon cas je dois faire un calendrier pour l’académie de Toulouse, il me faut donc configurer l’affichage de septembre à Juillet et cela pour l’année 2005 et 2006,

      Donc le squelette agenda_saison_mot.html
      est ton ami. Il va sélectionner tous les évenements qui ont lieu du 1er septembre au 31 aout de l’année suivante.
      Il s’utilise comme suit :

      votresite.com/agenda.php3 ?annee=2005&annee_fin=2006&type=saison_mot

      et une fois cette année passé il faut effacé les précèdent et recommencé pour l’année 2006-2007, comment faut-il faire ?

      Vu que c’est qu’une fois dans l’année on peut faire la modif au moment opportun
      J’essayerais de donner une réponse pour résoudre ce problème de maniére plus automatique prochainement (quand j’aurais la solution)

    • Le 22 mars 2006 à 22:57, par Mortas En réponse à : Afficher les articles par année ou par saison

      Merci pour cette réponse trés rapide^^
      ça marche niquel par contre je dois vraiment être une quiche, j’arrive pas à inverser le sens d’affichage, au lieu de janvier a decembre, afficher de decembre à janvier. J’ai essayer de faire comme indiqué sur le site mais ça ne marche pas. Aprés promis je vous embete plus ^^

    • Le 22 mars 2006 à 23:08, par job En réponse à : Afficher les articles par année ou par saison

      Non tu n’es pas une quiche. Mais effectivement je n’avais pas penser à cette inversion. Pour l’instant c’est impossible.

    • Le 23 mars 2006 à 13:46, par Mortas En réponse à : Afficher les articles par année ou par saison

      ok j’aurrais essayé^^ merci en tout cas

    • Le 29 avril 2008 à 12:38, par zil En réponse à : pas d’affichage sur pas d’heure

      Bonjour,
      je n’ai pas d’affichage des évenements si par exemple je ne mets pas d’heure et que l’évenement est sur une journée...

      par exemple,

      2008-05-12 00:00:00 2008-05-12 00:00:00 « bla bla bla »

      ne marche pas

      alors que

      2008-05-12 00:00:00 2008-05-13 00:00:00 « bla bla bla »

      affiche l’evenement sur la journée du 12 mai

      est ce normal ???
      merci
      Zil...

    • Le 29 avril 2008 à 12:39, par zil En réponse à : pas d’affichage si pas d’heure

      Bonjour,
      je n’ai pas d’affichage des évenements si par exemple je ne mets pas d’heure et que l’évenement est sur une journée...

      par exemple,

      2008-05-12 00:00:00 2008-05-12 00:00:00 « bla bla bla »

      ne marche pas

      alors que

      2008-05-12 00:00:00 2008-05-13 00:00:00 « bla bla bla »

      affiche l’evenement sur la journée du 12 mai

      est ce normal ???
      merci
      Zil...

    Répondre à ce message

  • Le 8 février 2006 à 21:01, par Philippe Multeau En réponse à : Afficher les articles par année ou par saison

    Bravo pour cette contrib, elle répond à mes besoins pour un futur site d’office du Tourisme. C’est l’affichage de type=annee que je pense utiliser.

    Une question, cependant, auquel je peux trouver la réponse en me creusant la tête, mais comme je débute, le moindre problème me fait perdre des heures !

    Alors voila : je veux afficher les évènement à partir de la date du jour, et sans limite de fin de période. En effet, une fois que je livre le site au client, il ne faut pas que je revienne dessus chaque année pour rechanger ma programmation de squelette.

    Il faudrait donc quelquechose du genre :
    votresite.com/agenda.php3 ?annee=actuelle&mois=actuel&type=annee

    Mais je ne connais pas la syntaxe à utiliser...

    Merci.

    • Le 8 février 2006 à 23:04, par job En réponse à : Afficher les articles par année ou par saison

      Salut,

      Si j’ai bien compris ta demande .Je te proposerais d’utiliser agenda_longueperiode.html tu le copies et tu renommes en agenda_tamodif.html
      penses à recopier aussi agenda_longueperiode_fonctions.php3 en agenda_tamodif_fonctions.php3.
      Ensuite tu modifies

      <BOUCLE_periode(ARTICLES){par date_redac}
         {agenda date_redac, periode,
       #ENV{annee}, #ENV{mois}, #ENV{jour},
       #ENV{annee_fin}, #ENV{mois_fin}, #ENV{jour_fin}}>

      par

      <BOUCLE_periode(ARTICLES){par date_redac}{age_redac<0}
         {agenda date_redac, periode,
       2006, 01, 01,
       2020, 01, 01}>

      ensuite tu appelles tonsite.com/agenda.php3 ?type=tamodif

      Tu as compris qu’il fallait remplacer tamodif par un nom plus joli et plus explicite. J’ai essayé vite fait en local donc cette solution est à tester( mais pense quelle est juste)
      Cette boucle sert à enregistrer tous les évenements dont la date redac est comprise entre le 1er janvier 2006 et le 1er janvier 2020 dont le date de rédaction (date_redac) n’est n’est pas encore passé (grace au critère age_redac<0)

      A+
      Job

    • Le 9 février 2006 à 00:13, par Philippe Multeau En réponse à : Afficher les articles par année ou par saison

      Wouhaaaa... ça c’est du service après-vente de contrib cousu main et en un temps record ! Merci mille fois !

      Cordialement.

    Répondre à ce message

  • Le 18 octobre 2005 à 11:21, par quincailler En réponse à : Afficher les articles par année ou par saison

    Bonne contrib, ressemble beaucoup à ce qu’il y a sur le wiki, plus détaillé, mais pas encore assez :/ ! Je m’explique, soucis de recalcul de la page lors du changement de mois ou de jours. Obligation de recalculer pour que cela s’affiche.

    Sinon rien à dire, ca tourne.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

  • Adaptive Images

    15 novembre 2013 – 69 commentaires

    Un plugin pour permettre aux sites responsive d’adapter automatiquement les images de la page à l’écran de consultation. Adaptive Images, que l’on pourrait traduire par Images adaptatives, désigne la pratique qui vise à adapter les taille, (...)

  • Social tags

    8 septembre 2008 – 428 commentaires

    Le plugin Social Tags permet d’ajouter des icônes de partage de liens vers les sites tels que Digg, Facebook, Delicious.... Une fois le plugin installé et activé (voir doc.), le choix des sites se fait via un menu de configuration. Insertion (...)

  • Module de Paiement Stripe

    17 octobre – commentaires

    Stripe est un prestataire de paiement externe https://stripe.com/fr qui propose une API moderne et une interface de paiement extrêmement conviviale et efficace. Ce module permet les paiements à l’acte et les paiement récurrents. Configuration (...)

  • Métas

    8 août 2009 – 50 commentaires

    Ce petit plugin permet l’ajout, depuis l’espace privé, de metatags aux articles et rubriques de SPIP, ainsi que la mise en exergue de mots importants.

Ça spipe par là