Changeset 18112 in spip-zone for _plugins_/_dev_/dtarch


Ignore:
Timestamp:
Jan 22, 2008, 9:37:26 PM (13 years ago)
Author:
james@…
Message:

pfff, un raté :)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_dev_/dtarch/demo_articles.html

    r18111 r18112  
    22
    33        Noisette d'Archives Mensuelles pour SPIP 1.9.2c et +
    4         (c)2008 James Licence GNU/GPL
    54
    65        Parametres:
     
    109                                Elle servira a mettre en evidence le mois choisi par le visiteur (class css 'on')
    1110                                Penser a specifier au minimum {date} en parametre pour l'INCLURE appelant
    12         var_date:       variable de navigation, facultatif, 'date' par defaut (texte)
     11        pour SPIP 1.9.3dev, on peut preferer {env}
     12        var_date:       variable de navigation, facultatif, 'date' par defaut
    1313                                {var_date=date_liste} pour &date_liste=2008-02
    1414
     
    1616        Cet exemple illustre comment generer une liste glissante de liens pointant
    1717        vers une page permettant l'affichage d'elements du mois choisi par le visiteur.
    18         On se base sur l'ensemble des ARTICLES du site.
     18        On se base sur l'ensemble des ARTICLES du site. Pour adapter a un autre ensemble
     19        d'elelements, ou un groupe d'articles plus reduit (mot-cle, rubrique limitee)
     20        ne pas perdre de vue qu'il y a 4 boucles dont les criteres doivent etre coherent.
    1921       
    2022        _reference      boucle englobante. Elle sert a definir la date de reference
    21                                 pour demarrer la liste.
     23                                pour demarrer la liste. Cette date sera employee par les 3 autres boucles
     24                                grace aux criteres {mois_relatif}
     25                                Elle utilise le critere agenda en prenant le plus recent des articles
     26                                de la periode visee.
    2227        _archives       boucle principale. Elle n'affichera que la #DATE des articles.
    23                                
     28                                En cas de gros volume, le parcours de la table peut s'averer contre-performant.
     29                                On profite donc du fait qu'on utilisera que les #DATE, de plus avec un degre
     30                                de precision au mois pres pour recuperer les donnees groupees par mois
     31                                avec le critere fusion.
     32                                Ensuite, on limite aux articles publies dans les 12 derniers mois.
    2433        _recent,
    25         _ancien         deux boucles
     34        _ancien         deux boucles qui affichent quelque chose si un article est publie dans la periode qui suit
     35                                ou qui precede.
    2636
    2737][(#REM)
    2838
    29         Periode de reference:
     39        Periode visee:
    3040        Comme dit plus haut, la date de contexte met en evidence le mois selectionne par le visiteur.
    31         Elle ne peut donc servir a
     41        Elle ne peut donc servir a definir la fenetre.
     42        On prend donc a la place l'anee de la date systeme, ajustee par un decalage determine par les liens
     43        des boucles _recent et _ancien
    3244
    3345]#SET{date,#EVAL{date('Y-m')}}
    3446[(#SET{annee_fin,[(#GET{date}|annee|plus{#ENV{decal}})]})]
    35 [(#SET{annee_deb,[(#GET{annee_fin}|plus{#ENV{decal}|>{0}|?{1,-1}})]})][
    36 (#REM)
    37 
    38 
    39 
    40 ]<BOUCLE_reference(ARTICLES)
     47[(#SET{annee_deb,[(#GET{annee_fin}|plus{#ENV{decal}|>{0}|?{1,-1}})]})]
     48<BOUCLE_reference(ARTICLES)
    4149        {par date}{inverse}{0,1}
    4250        {agenda date, periode, #GET{annee_deb}, (#GET{date}|mois), 1, #GET{annee_fin}, (#GET{date}|mois), 31}
    4351><B_archives>
    4452<div id="archives" class="menu">
    45         <h2><:archives:></h2>
     53        <h2><:dtarch:archives:></h2>
    4654        <BOUCLE_recent(ARTICLES){lang_select=non}{par date}{inverse}{0,1}{mois_relatif<0}>
    4755        <p>
     
    4957        </p>
    5058        </BOUCLE_recent>
    51         <ul>
    52                 <BOUCLE_archives(ARTICLES)
     59        <ul>[(#REM)
     60
     61
     62
     63                ]<BOUCLE_archives(ARTICLES)
    5364                        {lang_select=non}{fusion DATE_FORMAT(date,'%Y-%m')}
    5465                        {par date}{inverse}
Note: See TracChangeset for help on using the changeset viewer.