2005-08-07 13:02:52
Cachez ce document que je ne saurais voir !!!
Par DoriaN, 2005-08-07 13:02:52 attime 13:02 :: Boucles-Ô-TeK
les documents des articles post-datés ou proposés apparaissent dans une boucle documents, on va devoir les exclure.
2005-08-05 00:00:00
Articles des 15 prochains jours
Par DoriaN, 2005-08-05 00:00:00 attime 00:00 :: Boucles-Ô-TeK
<BOUCLE_evenements_passes (ARTICLES) {age > 0} {doublons agenda}>
</BOUCLE_evenements_passes>
<BOUCLE_quinze_prochains_jours (ARTICLES) {age > -15} {statut=publie} {doublons agenda}>
#TITRE...
</BOUCLE_quinze_prochains_jours>Affiche les articles des 15 prochains jours mais pas les autres. Le critère statut=publie, spécificité spip 1.8.2, permet de ne pas respecter le choix par défaut de la configuration du site et donc d’afficher les articles post-datés même s’ils ne sont pas encore officiellement publiés sur le site.
2005-08-04 00:00:00
Un titre pour tous les documents
Par DoriaN, 2005-08-04 00:00:00 attime 00:00 :: Boucles-Ô-TeK
L’idée est d’afficher le nom du fichier lorsqu’on n’a pas rempli le champ "Titre" d’un document joint, il faut utiliser le filtre de test|?{sioui,sinon}
ce qui nous donne :
[(#TITRE|?{'',' '}) [(#FICHIER|fichier)] ] [(#TITRE)]
ce qui, en français, pourrait s’expliquer ainsi :
le test (?) retourne une chaîne vide ('') quand #TITRE existe, le code suivant [(#URL_DOCUMENT|fichier)] n’est donc pas exécuté ;
le test (?) retourne une chaîne non vide (' ') (notez l’espace entre les ’) donc le code est exécuté cette fois, le filtre fichier nous renvoit alors le nom du document ;
on ferme bien le ] crochet avant de passer à la balise suivante ;
[(#TITRE)] n’est, de toute façon, affiché que s’il existe.
2005-08-03 00:00:00
Sélectionner des articles remplissant -au moins- un critère
Par DoriaN, 2005-08-03 00:00:00 attime 00:00 :: Boucles-Ô-TeK
Une belle succession de boucle trouvé sur le forum spip pour reproduire l’effet d’un "ou" logique.
2005-07-24 00:00:00
Des menus avec Spip
Par DoriaN, 2005-07-24 00:00:00 attime 00:00 :: Boucles-Ô-TeK
Il est finalement très facile de faire de beaux menus avec spip, avec un minimum de code, je vous présente un exemple d’adaptation de menu html/css, qui devrait vous inspirer.
2005-07-23 00:00:00
Modification du critère {statut}
Par DoriaN, 2005-07-23 00:00:00 attime 00:00 :: Boucles-Ô-TeK
presque copie d’un message de Fil sur la liste « spip-core », liste qui annonce les nouveautés de spip.
Désormais l’appel du critère {statut} désactive la vérification par
défaut [1].
Ce qui permet de faire, par exemple, une boucle articles à paraitre :
<BOUCLE_a_paraitre(ARTICLES){statut=publie}{age<=0}>
#DATE, #TITRE
</BOUCLE_a_paraitre>On sélectionne les articles publiés qui ont une date dans le futur.
Ou encore une boucle articles proposés :
<BOUCLE_proposes(ARTICLES){statut=prop}>
#TITRE, article proposé le #DATE
</BOUCLE_proposes>ou encore une boucle de tout les articles du site, avec leur statut :
<BOUCLE_tout(ARTICLES){statut IN publie, prop}>
#TITRE (#STATUT)
</BOUCLE_tout>Ce critère est valable pour toutes les boucles : BREVES, ARTICLES, FORUM, SIGNATURES, SYNDICATION, SYNDIC_ARTICLES, RUBRIQUES, AUTEURS.
Il va de soi que c’est à utiliser avec précaution, ne serait-ce que parce
que, par exemple, la <boucle(FORUMS){statut==.}> n’hésitera pas à afficher les forums privés de la messagerie privée...
Dernière remarque : indépendamment des choix de "publication", ce critère
peut être très utile pour fabriquer des interfaces d’administration
alternatives, dans des squelettes protégés par #LOGIN_PUBLIC.
2005-07-22 00:00:00
Je veux mon mot clé !
Par DoriaN, 2005-07-22 00:00:00 attime 00:00 :: Boucles-Ô-TeK
Une boucle pour récupérer un mot clé que l’on juge indispensable : on cherche successivement le mot clé dans l’article, la rubrique puis le secteur pour être sûr de le retrouver.
2005-07-19 20:56:48
Afficher directement l’article si la rubrique n’en a qu’un
Par DoriaN, 2005-07-19 20:56:48 attime 20:56 :: Boucles-Ô-TeK
c’est parti...
<BOUCLE_menurub(RUBRIQUES){racine}{par num titre}>
<BOUCLE_articles_plusdun(ARTICLES) {id_rubrique} {1,1}>
<a href="[(#URL_RUBRIQUE)]">#_menurub:TITRE</a>
</BOUCLE_articles_plusdun>
<BOUCLE_articles_unseul(ARTICLES) {id_rubrique} {0,1}>
<a href="[(#URL_ARTICLE)]">#_menurub:TITRE</a>
</BOUCLE_articles_unseul>
<//B_articles_plusdun>
</BOUCLE_menurub>La première boucle fabrique le lien vers la rubrique si il y a plus d’un article (puisque {1,1} veut dire qu’on prend le 2e résultat retourné par la Boucle).
La deuxième boucle fabrique le lien vers l’unique article de la rubrique, étant dans la partie conditionnelle de la boucle on sait qu’il y a 0 ou 1 article dans cette rubrique.
La notation #_menurub:TITRE permet d’afficher le nom de la rubrique alors que nous sommes dans une boucle articles.
2005-07-10 00:00:00
Trier ses articles par date et par date_redac
Par DoriaN, 2005-07-10 00:00:00 attime 00:00 :: Boucles-Ô-TeK
Suite à une question posée sur la liste spip je suis arrivée à l’écriture de la boucle qui suit (dont l’affichage n’est pas encore optimal, je laisse la cosmétique de côté aujourd’hui).
Le but est d’afficher une liste d’article dans l’ordre chronologique en utilisant la date de rédaction lorsqu’elle est renseigné, et la date de publication dans les autres cas.
Par exemple sur mon site perso j’utilise la date de rédaction antérieure lorsque je publie un article en rapport avec un évènement passé afin d’afficher la date de cet évènement (ou de la prise de vue puisqu’il s’agit surtout de photos). Je pense donc utiliser cette boucle pour présenter une joli liste des articles, plus efficace que le plan actuel.
<ul>
<BOUCLE_articles_redac(ARTICLES){par date_redac}{date_redac>0}{doublons}>
<BOUCLE_articles_pub(ARTICLES){date<#_articles_redac:DATE_REDAC}{par date}{doublons}>
<li> #TITRE (article publié le [(#DATE|affdate)] ) : </li>
</BOUCLE_articles_pub>
<li> #TITRE (article écrit le [(#DATE_REDAC|affdate)])</li>
</BOUCLE_articles_redac>
<BOUCLE_relicat_articles(ARTICLES) {par date} {doublons}>
<li> #TITRE (article publié le [(#DATE|affdate)] ) : </li>
</BOUCLE_relicat_articles>
</ul>2005-07-07 00:00:00
Critères de sélections dans les boucles spipiennes
Par DoriaN, 2005-07-07 00:00:00 attime 00:00 :: Boucles-Ô-TeK
Sélectionner certaines rubriques :
<BOUCLE_secteurs(RUBRIQUES){id_rubrique==^(24|77|88)$}>
Le principe contraire marche aussi :
<BOUCLE_secteurs(RUBRIQUES){id_rubrique!==^(24|77|88)$}>
Sélectionner des rubriques adjacentes (de 15 à 21) :
<BOUCLE_secteurs(RUBRIQUES){id_rubrique==^[15-21]$}>
On peut aussi utiliser des critères de comparaison :
<BOUCLE_secteurs(RUBRIQUES){id_rubrique<16}{id_rubrique>22}>Cet article mérite une grosse mise à jour car avec spip 1.8 les possibilités sont devenues énormes : on peut utiliser quasiment toutes les regex comme critère de tri dans les Boucles.
SPIP envoie directement ces requètes à MySQL, donc, on doit pouvoir utiliser tout ce qui est décrit sur cette page : http://dev.mysql.com/doc/mysql/en/regexp.html, et pour bien comprendre ces fameuses « expressions régulières » ce site est une mine.

Bientôt des exemples tordus sur cette page, vous pouvez laisser les votres en commentaires !
2005-07-06 13:23:38
Les articles {{sans}} mot clé ?
Par DoriaN, 2005-07-06 13:23:38 attime 13:23 :: Boucles-Ô-TeK
<BOUCLE_mots(MOTS){tout}>
<BOUCLE_exclure_articles(ARTICLES){id_mot}{doublons mots}>
</BOUCLE_exclure_articles>
</BOUCLE_mots>
<BOUCLE_articles_sans_mots(ARTICLES){doublons mots}>
... #TITRE ...
</BOUCLE_articles_sans_mots>2005-07-05 13:17:18
Articles & Brèves mélangées
Par DoriaN, 2005-07-05 13:17:18 attime 13:17 :: Boucles-Ô-TeK
Liste des articles et brèves affichés par date.
2002-08-20 14:40:57
Faire vivre vos forums
Par DoriaN, 2002-08-20 14:40:57 attime 14:40 :: Boucles-Ô-TeK
affiche les 10 derniers articles ayant un message sur l’ensemble des rubriques (en ordre inverse de date)
2002-07-07 21:18:24
Du bon usage du critère {doublons}
Par DoriaN, 2002-07-07 21:18:24 attime 21:18 :: Boucles-Ô-TeK
1er ExemplE : affichage sur 2 colonnes
<BOUCLE_1(ARTICLES) {doublons} {1/2}> <li>#TITRE</li> </BOUCLE_1>... prend la moitié des articles *une fois filtrés par les doublons*. Après cette boucle, dans les non-doublons il ne reste donc plus que l’autre moitié, c’est-à-dire précisément ce que l’on veut afficher. Il suffit donc d’ajouter la boucle suivante :
<BOUCLE_2(ARTICLES) {doublons}> <li>#TITRE</li> </BOUCLE_2>encore + fort, sur 3 colonnes
<BOUCLE_1(ARTICLES) {doublons} {1/3}> : prend le premier tiers
<BOUCLE_2(ARTICLES) {doublons} {1/2}> : prend la moitié des deux tiers restants, c’est-à-dire le deuxième tiers
<BOUCLE_3(ARTICLES) {doublons}> : prend les articles restants, c’est-à-dire le troisième tiers
ConclusioN
Il y a donc une petite gymnastique mathématique à faire au moment d’écrire les critères des boucles, mais c’est tout à fait faisable ;)
Exercice : quelles successions de boucles doit-on utiliser pour un affichage sur 4 colonnes ? Vous avez 15 minutes !!!!
2002-06-27 15:43:12
Afficher **NOUVEAU** à côté d’un article
Par DoriaN, 2002-06-27 15:43:12 attime 15:43 :: Boucles-Ô-TeK
Pour ajouter l’indication "NOUVEAU" pour les articles de moins de 7 jours (ou pour les messages des forums) utilisez cette boucle :
<BOUCLE_articles(ARTICLES){id_rubrique}{par titre}>
<li> #TITRE
<BOUCLE_tester_date(ARTICLES){id_article}{age < 7}>
**NOUVEAU**
</BOUCLE_tester_date>
</BOUCLE_articles>