L'infini en SPIP, enfin deux brèves après ;)

B'jour !

J'ai une questions ! Oui oui, ya bien un "s" à "Une questions" ; Ais-je déjà mentionné que SPIP est fabuleux ? Le meilleur CMS de sa catégorie et qui déborde sur les autres (catégories, suivez un peu) ? Franchement, plus le temps passe, plus j'éssaie d'autres trucs.... Bref.

#J'aimerais savoir comment on dit à SPIP "tout". Par exemple, dans une boucle d'affichage d'articles, du style

  *<BOUCLE_breves*(BREVES) {par date} {inverse} {16,32}*>*

Qui veut donc dire, en l'occurence "trouve-moi TOUTES les breves du site, et affiche m'en 32 en commençant par la 16zième" ; J'aimerais lui dire "Tu commences par la 32eme et tu m'affiche TOUT ce qu'il y a après.

Plou difficile, caramba :
# Sur la page d'accueil de mon site, j'affiche les dernieres brèves. Quand on a fini de tout lire bien tout, on clique sur "avant" ou "après" et on obtient la même page, qui liste juste les éléments plus ou moins, dans le temps. Et bon, ça marche.
Le seul truc, c'est intellectuellement. C'est pas sa--tis-fai-sant. Je n'aime pas l'idée d'une si grande quantité de code dupliquée pour rien, je sais pas, ça m'agace. Entre autres parce que je sais qu'il existe une solution, un moyen *logique* ; Merci de m'en avertir si vous voulez bien le partager ; J'en profite pour bonne année, comme ça ce point est reglé. Après j'aurai des questions sur le multi-lingues, mais en son temps.

Merci !!

--
<--------------
www.halluci.net
-------------->

#J'aimerais savoir comment on dit à SPIP "tout". Par exemple, dans une boucle d'affichage d'articles, du style

  *<BOUCLE_breves*(BREVES) {par date} {inverse} {16,32}*>*

Qui veut donc dire, en l'occurence "trouve-moi TOUTES les breves du site, et affiche m'en 32 en commençant par la 16zième" ; J'aimerais lui dire "Tu commences par la 32eme et tu m'affiche TOUT ce qu'il y a après.

essaie {32,n-0}
normalement, selon la doc Les critères communs à toutes les boucles - SPIP, ca devrait marcher.

Plou difficile, caramba :
# Sur la page d'accueil de mon site, j'affiche les dernieres brèves. Quand on a fini de tout lire bien tout, on clique sur "avant" ou "après" et on obtient la même page, qui liste juste les éléments plus ou moins, dans le temps. Et bon, ça marche.

je te renvoie sur le meme doc, à ce passage :

"{debut_xxx,b} est une variante très élaborée de la précédente. Elle permet de faire commencer la limitation des résultats par une variable passée dans l’URL (cette variable remplace ainsi le a que l’on indiquait précédemment). C’est un fonctionnement un peu compliqué, que fort heureusement on n’a pas besoin d’utiliser trop souvent."

combiné à une variable passée dans ton url, tu peux faire une page suivante et précédente qui affiche tes brèves de 10 en 10.

FX

FX a écrit :

essaie {32,n-0}
normalement, selon la doc Les critères communs à toutes les boucles - SPIP, ca devrait marcher.

ou faire un {doublons} avec les 32 premières puis afficher toutes les autres

FX wrote:

(...)*Parse error*: parse error, unexpected ')' in

ca c'est pas normal... soit c'est une division par 0 qu'il n'aime pas (essaie de faire n-1 à la place pour voir si c'est le zéro qu'il n'aime pas)

Ca a marché ! Pardon d'avoir douté. en effet, zero il n'aime pas :confused:

en fait je ne t'ai pas conseillé vraiment toute la bonne doc, puisque l'essentiel de l'explication est dans la description des variables d'environnement ( #ENV). Là dessus tu trouveras une méthode pour éviter de passer par debut_quelquechose.

Nonon, j'avais trouvé aussi ce -0, en cherchant dans la direction que tu m'avais indiqué ! Merci encore, ça m'ôte un poids :slight_smile:

vala vala bon courage ! :slight_smile:

FX

-pX

--
<--------------
www.halluci.net
-------------->

FX wrote:

(...)
je te renvoie sur le meme doc, à ce passage :

"{debut_xxx,b} est une variante très élaborée de la précédente. Elle permet de faire commencer la limitation des résultats par une variable passée dans l’URL (cette variable remplace ainsi le a que l’on indiquait précédemment). C’est un fonctionnement un peu compliqué, que fort heureusement on n’a pas besoin d’utiliser trop souvent."

Huh, FX, justement, j'aimerais bien l'URL :slight_smile: Si tu la retrouves, parce que là, je la cherche depuis 10', impossible ! grmph.

J'ai trouvé ça :

Je l'ai même installé, pour voir, mais c'est effectivement pas simple. Le probleme, c'est surtout la fiabilité, je commence à avoir *beaucoup* de breves... De toutes façons, c'est un problème pas simple, qui concerne *toutes* les listes d'une page donnée, en l'occurence, sur mon sommaire, 1#Les deux derniers articles, 2#Les 24 derniers breves, et 3#les 64 derniers messages de forum.

Il faudrait que tout ce petit monde s'incrémente gentiment, j'admet que c'est pas simple.
Donc, je triche, et j’en suis à quatre "fausses" pages de sommaire, qui me servent juste à incrémenter la boucle

  *<BOUCLE_breves*(BREVES) {par date} {inverse} {0,24}*>*

avec un lien vers la page suivante, qui elle, contient

  *<BOUCLE_breves*(BREVES) {par date} {inverse} {24,48}*>*

Et ainsi de suite, ce qui n'est pas très joli :confused:

Bon, si quelqu'un a une solution élégante...

Merci !

pX

--
<--------------
www.halluci.net
-------------->

pX a écrit :

FX wrote:

(...)*Parse error*: parse error, unexpected ')' in

ca c'est pas normal... soit c'est une division par 0 qu'il n'aime pas (essaie de faire n-1 à la place pour voir si c'est le zéro qu'il n'aime pas)

Ca a marché ! Pardon d'avoir douté. en effet, zero il n'aime pas :confused:

c'est quoi la syntaxe alors finalement ?
ca m'intéresse, ne l'ayant pas encore utilisée... :slight_smile:

FX

"{debut_xxx,b} est une variante très élaborée de la précédente. Elle permet de faire commencer la limitation des résultats par une variable passée dans l’URL (cette variable remplace ainsi le a que l’on indiquait précédemment). C’est un fonctionnement un peu compliqué, que fort heureusement on n’a pas besoin d’utiliser trop souvent."

Huh, FX, justement, j'aimerais bien l'URL :slight_smile: Si tu la retrouves, parce que là, je la cherche depuis 10', impossible ! grmph.

" - [(#ENV{xxxx,zzzz})] à partir de [SPIP 1.8], permet d’accéder à la variable de nom xxxx passée par la requête HTTP. zzzz est une partie optionnelle qui permet de retourner une valeur même si la variable xxxx n’existe pas.

Par défaut, la balise #ENV est filtrée par htmlspecialchars. Si on veut avoir le résultat brut, l’étoile « * » peut être utilisée comme pour les autres balises : [(#ENV*{xxxx})]. "

c'est bien plus pratique que de passer par début, merci spip 1.8 !

FX