Mille excuses si ma question est déplacée, ou si elle n’est pas postée au bon endroit, mais je ne vois pas bien à qui je dois la poser.
Webmaster amateur, j’ai eu à développer quelques sites assez joufflus avec SPIP. Je suis globalement très convaincu par cet outils… à une exception près ; la gestion des tests. Autant la syntaxe des boucles est agréable, efficace et lisible, autant un simple test (sur quelque valeur que ce soit) pose rapidement des problèmes de lisibilité ou de lourdeur considérables. Les filtres de tests, en particulier, deviennent très rapidement des casse-têtes épouvantables, pour peu qu’on ait à gérer des tests imbriqués, des booléens et autres joyeusetés quotidiennes de la programmation.
Du coup, j’ai eu recours plus d’une fois à l’alternative consiste à écrire une “fausse” boucle (par exemple, pour vérifier que le numéro de rubrique est tel ou tel) mais je ne peux m’empêcher de penser que c’est un pis-aller assez peu satisfaisant.
D’où ma question : pourquoi n’avoir pas développé une syntaxe de tests aussi claire et simple que celle des boucles ? Un petit jeu d’instructions Si … Alors … Sinon … Et … Ou… etc. allègerait considérablement mes squelettes, tant dans l’écriture que dans le boulot demandé au serveur. Et je ne pense pas être le seul dans ce cas. Pour le développeur SPIP averti mais non expert, ce serait je crois une avancée considérable.
Désolé si cette demande faut “yaka fokon”, ou si la question a déjà été posée mille fois…
Mille excuses si ma question est déplacée, ou si elle n'est pas postée au
bon endroit, mais je ne vois pas bien à qui je dois la poser.
Le bon endroit était peut-être ici ou la liste user: spip@rezo.net
D'où ma question : pourquoi n'avoir pas développé une syntaxe de tests aussi
claire et simple que celle des boucles ? Un petit jeu d'instructions Si ....
Alors .. Sinon ... Et ... Ou... etc. allègerait considérablement mes
squelettes, tant dans l'écriture que dans le boulot demandé au serveur. Et
je ne pense pas être le seul dans ce cas. Pour le développeur SPIP averti
mais non expert, ce serait je crois une avancée considérable.
Désolé si cette demande faut "yaka fokon", ou si la question a déjà été
posée mille fois...
Ce que la doc des itérateurs ne dit pas clairement c'est que les
itérateurs implémentent un critère {si condition} qui s'utilise comme
ceci par exemple {si #GET{mavaleur}|=={42}|oui} et qui peut
conditionner l'exécution de n'importe quelle boucle. Voir:
Merci de cette réponse rapide. Cela semble effectivement un progrès, mais j’ai quand même une question. L’exemple propose :
<BOUCLE_art(ARTICLES) {si #ID_RUBRIQUE|=={8}} {par date}> <a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_art> Dans ce cas, cela veut-il dire :
1. Qu'on récupère l'ensemble des articles de la base à condition que la rubrique d'environnement soit la 8 ? 2. Qu'on récupère uniquement les articles de la rubrique 8 ? 3. Qu'on récupère uniquement les articles de la rubrque 8 si celle-ci est la rubrque d'environnement ?
Je penche pour la 1, mais je veux bien une confirmation...
Comme l'indique la doc, le critère si est juste une *condition
d'exécution* de la boucle. Il ne conditionne pas le contenu des
résultats, seulement si elle est exécutée ou non.