Merci pour ton aide!
J'ai suivi ton modele :
<BOUCLE_filmo(ARTICLES){id_mot=#ENV{id}}{exclus}{doublons}{par titre}>
[(#ID_ARTICLE|!={#ENV{id_actuel}}|?{<tr><td> <a href="#URL_ARTICLE"
title="#TITRE"> [(#LOGO_ARTICLE||image_reduire{125,125})]</a></td><td><a
href="#URL_ARTICLE" title="#TITRE"> #DESCRIPTIF</a> </td></tr>})]
</BOUCLE_filmo>
Il m'affiche toujours l'article à exclure alors qu'il ne doit rien faire ,
mais cette fois etant sur de la conditon, j'ai identifié la source du
probleme:
Le probleme vient de la recuperation de la valeur d'article
Je passe un numéro de mot clé en parametre id
Et du coup il ne recupere pas le numero article ,
En passant sur le 1757 il l'affiche quand meme puisque le #ENV{id_actuel}
n'est plus egal à 1757 ou la valeur de l'article courant
Comment faire pour recuperer le numero article courant ? Peut on passer 2
parametres id ?
En codant en dur le numero article courant ca fonctionne, mais des que je
remets #ENV{id_actuel}
Il ne voit jamais le 1757 ...
-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part de
Jacques J.
Envoyé : mardi 24 avril 2007 19:54
À : SPIP
Objet : Re: [Spip] 192 - comment créer une condition dans une boucle??
Le 24/04/07, Gaius Baltar a écrit :
Depuis hier plus je me creuse la tete et moins j'avance J'ai passé la
journée dessus et je suis toujours bloqué
En ayant mis :
<BOUCLE_filmo(ARTICLES){id_article!=#ENV{id_article}}{id_mot=#ENV{id}}
{par
titre}>
<tr><td> <a href="#URL_ARTICLE" title="#TITRE">
[(#LOGO_ARTICLE||image_reduire{125,125})]</a> </td><td><a
href="#URL_ARTICLE" title="#TITRE"> #DESCRIPTIF</a> </td></tr>
</BOUCLE_filmo>
Un problème de syntaxe:
Dans Les filtres de SPIP - SPIP
[SPIP 1.8] introduit le filtre |?{sioui,sinon} qui est une version évoluée
de |sinon. Il prend un ou deux paramètres :
* sioui est la valeur à afficher à la place de l'élément filtré si
celui-ci est non vide.
* sinon est optionnel. C'est la valeur à afficher si l'élément filtré
est vide. [(#TEXTE|?{#TEXTE,"pas de texte"})] est équivalent à l'exemple
donné pour le filtre |sinon.
- [SPIP 1.8] introduit un jeu de filtres pour faire des comparaisons avec
des valeurs :
* |=={valeur} et |!={valeur} permettent de vérifier, respectivement,
l'égalité ou l'inégalité entre l'élément filtré et valeur. Par exemple : <li
[(#TITRE|=={édito}|?{'id="edito"',''})]>#TITRE</li>
* |>{valeur}, |>={valeur}, |<{valeur} et |<={valeur} comparent l'élément
filtré (qui doit être numérique) avec une valeur numérique.
Par exemple :
[(#TOTAL_BOUCLE) [(#TOTAL_BOUCLE|>{1}|?{'articles','article'})]
dans cette rubrique.]
Remarque : De manière générale, tous les opérateurs de comparaison de
php peuvent être utilisés comme filtres dans [SPIP 1.8].
Il ne tient pas compte de la 1ere condition
{id_article!=#ENV{id_article}} qui lui dit d'exclure l'article affiché
en cours Afin d'afficher tous les articles pour cet mot clé sauf celui
la
Comment l'obliger à respecter cette condition ??
Merci
-----Message d'origine-----
De : Mark Baber [mailto:mark.baber@novado.ch] Envoyé : mardi 24 avril
2007 17:33 À : Gaius Baltar Objet : Re: [Spip] 192 - comment créer une
condition dans une boucle??
Tu peux faire l'inverse, très facilement.
La syntaxe des boucles est:
<Bn>
* Code HTML optionnel avant
<BOUCLEn(TYPE){critère1}{critère2}...{critèrex}>
* Code HTML + balises SPIP
</BOUCLEn>
* Code HTML optionnel après
</Bn>
* Code HTML alternatif
<//Bn>
Alors, changez ton boucle pour TROUVER l'article, et insérer ton code
d'affichage dans la section "alternatif".
Si tu veux aussi éliminer l'article d'une 2ème boucle imbriquée, tu
peux spécifier {id_article!=#ENV{id_article}} ou {exclus}
Plus facile, moins compliqué ?
----- Original message -----
From: "Gaius Baltar" <gaius.baltar@orange.fr>
Date: Tue, 24 Apr 2007 16:32:44 +0200
Subject: [Spip] 192 - comment créer une condition dans une boucle??
To: <spip@rezo.net>
>Est-ce que c'est bon ?
>
>Si c'est egal a l'article affiché je ne fais rien donc je n'affiche
>pas l'article dans la liste, sinon j'affiche la ligne de tableau
>
>
>SI(#ID_ARTICLE|=={#ENV{id_actuel}} alors RIEN sinon AFFICHER
>
>Donc J'ai écrit cette boucle
>
><BOUCLE_filmo(ARTICLES){id_mot=#ENV{id}}{par titre}>
>[(#ID_ARTICLE|=={#ENV{id_actuel}}||
><tr><td> <a href="#URL_ARTICLE" title="#TITRE">
>[(#LOGO_ARTICLE||image_reduire{125,125})]</a> </td><td><a
>href="#URL_ARTICLE" title="#TITRE"> #DESCRIPTIF</a> </td></tr>]
></BOUCLE_filmo>
>
>Mais à l'arrivée il ne tient pas compte de ma condition et il
>m'affiche toujours l'article qu'il ne doit pas afficher
>
>
>
>
>-----Message d'origine-----
>De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part
>de Gaius Baltar Envoyé : mardi 24 avril 2007 03:56 À : spip@rezo.net
>Objet
>: RE: [Spip] 192 - creer un modele liste d'article pour un mot clé
>
>Effectivement <filmo243> avec filmo.html l'appel se fait bien cette
>fois ci
>
><BOUCLE_filmo(ARTICLES){id_mot=#ENV{id}}{par titre}> <tr><td> <a
>href="#URL_ARTICLE" title="#TITRE">
>[(#LOGO_ARTICLE||image_reduire{125,125})]</a> </td><td><a
>href="#URL_ARTICLE" title="#TITRE"> #DESCRIPTIF</a> </td></tr>
></BOUCLE_filmo>
>
>Par contre il l'affiche dans ma boucle l'article en cours Comment
>faire pour ne pas l'afficher du tout ??
>
>En rajoutant un test si id_article=id_article en cours alors ne rien
>faire sinon afficher ?
>
>Test : (#ID_ARTICLE|=={#ENV{id_actuel}}
>
><BOUCLE_filmo(ARTICLES){id_mot=#ENV{id}}{par titre}> <tr><td> <a
>href="#URL_ARTICLE" title="#TITRE">
>[(#LOGO_ARTICLE||image_reduire{125,125})]</a> </td><td><a
>href="#URL_ARTICLE" title="#TITRE"> #DESCRIPTIF</a> </td></tr>
></BOUCLE_filmo>
>
>???
>
>
>
>-----Message d'origine-----
>De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part
>de Olivier GENDRIN Envoyé : mercredi 18 avril 2007 17:40 À : 'SPIP'
>Objet : RE: [Spip] 192 - creer un modele liste d'article pour un mot
>clé
>
>> > <filmo|id=243>
>>
>> et avec <mod_filmo|243> comme appel ?
>
>Ou même <filmo243>...
>
>(pourquoi mod_ ?)
>
>
>_______________________________________________
>liste spip
>spip@rezo.net - désabonnement : spip-off@rezo.net Infos et archives :
>http://listes.rezo.net/mailman/listinfo/spip
>Documentation de SPIP : http://www.spip.net/
>irc://irc.freenode.net/spip FAQ
>: http://www.spip-contrib.net/spikini/FaQ
>
>
>
>
>_______________________________________________
>liste spip
>spip@rezo.net - désabonnement : spip-off@rezo.net Infos et archives :
>http://listes.rezo.net/mailman/listinfo/spip
>Documentation de SPIP : http://www.spip.net/
>irc://irc.freenode.net/spip FAQ
>: http://www.spip-contrib.net/spikini/FaQ
>
>
>
>
>_______________________________________________
>liste spip
>spip@rezo.net - désabonnement : spip-off@rezo.net Infos et archives :
>http://listes.rezo.net/mailman/listinfo/spip
>Documentation de SPIP : http://www.spip.net/
>irc://irc.freenode.net/spip FAQ :
>http://www.spip-contrib.net/spikini/FaQ
>
>
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip FAQ :
http://www.spip-contrib.net/spikini/FaQ
--
@plus
Jacques
Pour les lyonnais++ spip-lyon@rezo.net http://spip-party.net/-Lyon-
Inscription : http://listes.rezo.net/mailman/listinfo/spip-lyon
Entre une fenotte et un bon mâchon, n'hésite pas, gone, n'hésite pas.
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/ irc://irc.freenode.net/spip FAQ
: http://www.spip-contrib.net/spikini/FaQ