Bonjour,
Je viens de regarder inc-compilo.php3 pendant une demi-heure sans
malheureusement avancer grandement mon education
Je cherche à éliminer des lignes vides des pages HTML produites par SPIP
pour que la source de la page soit plus lisible lorsqu'on la regarde. En
effet l'imbrication des boucles dans les squelettes produit chez moi parfois
jusqu'à 7 lignes vides entre les lignes d'HTML.
N'y aurait-il pas une manière simple à éliminer ces lignes vides? (Si c'est
compliqué à faire, je peux bien vivre avec.)
Outre Tidy qui est une méthode en aval, on peut aussi corriger le pb en amont.
Ces lignes vides correspondent dans le squelette à des balises seules sur une ligne et ne produisant pas de code, par exemple:
avant #FORMULAIRE_SIGNATURE
apres
lorsque la pétitiion n'est pas activée. Si tu veux empecher les lignes vides, utilise les crochets ainsi:
Merci. Mais tant que j'aurai des squelettes écrits en HTML, je préfère
rester en HTML.
Corriger des squelettes HTML en étudiant une code source XHTML après
transformation par Tidy me semble bien plus compliqué que sauter toutes ces
lignes vides.
D'ailleurs je n'arrivais pas à activer Tidy sur le serveur Linux chez
l'hébergeur, mais seulement chez moi avec Windows. Une fois je referai des
essais...
si ca peut etre utile, j'ai remarqué que quand la boucle pouvait être vide (ex : boucle d'exclusion, boucle de logo de mots clef, etc..) on pouvait éviter ou limiter le nombre de lignes en placant la boucle sur une seule ligne ... ex : <BOUCLE_exclu(table){doublons}></BOUCLE_exclu>
par contre ca ne facilite pas la lecture du code à mon goût
@+
Nicolas RIQUOIS http://www.pucroller.com
on pouvait éviter ou limiter le nombre de lignes en placant la boucle sur
une seule ligne ...
par contre ca ne facilite pas la lecture du code à mon goût
Justement.
Déesse écrit:
tu auras 2 lignes blanches si la boucle est vide.
Pour les éviter il faut écrire:
avant<BOUCLE1(table){critere}>
corps
</BOUCLE1>apres
Aha. Merci. Seulement je n'ai pas de texte "avant" ou "après", mais une
quantité de boucles imbriquées.
Ce n'est pas très grave. J'avais juste pensé qu'il serait possible
"d'enlever" les doubles lignes vides à la fin du travail du compilateur.
Ce n'est pas très grave. J'avais juste pensé qu'il serait possible
"d'enlever" les doubles lignes vides à la fin du travail du compilateur.
le pb c'est que c'est difficile de savoir si ce sont des lignes HTML ou autres (une chaine JavaScript par exemple): il faut réanalyser tout le texte, c'est-à-dire ... réécrire Tidy.
Je m'en suis servi à plusieurs reprises. Par exemplej je vais afficher 10
articles d'un mot-clé dans la langue choisie par l'internaute. Ensuite, je
dois afficher 10 articles prix au hasard dans les autres langues.
J'ai donc sélectionné dans une boucle 10 articles du critère lang. mais
comment afficher les articles des autres langues ?
J'ai ajouté une boucle qui n'affiche rien mais qui traite tous les articles
du critère {lang} et en utilisant {exclus}. Ayant vidé de cette façon tous
les articles de la langue de l'internaute, je peux faire la boucle sur les
articles du même mot-clé, sachant qu'il ne me reste plus maintenant que les
autres langues.
C'était une méthode très en vogue quand j'ai travaillé sur RAforum, l'année
passée Mais peut-être que, maintenant, il y a des façons plus élégantes
de faire !
Idem avec des inclusions : la première boucle dans le squelette inclus
traite l'article en cours, de façon à ce que je ne le retrouve plus dans mes
autres boucles !
le pb c'est que c'est difficile de savoir si ce sont des lignes HTML ou
autres (une chaine JavaScript par exemple): il faut réanalyser tout le
texte, c'est-à-dire ... réécrire Tidy.
Aha ! Je pensais que probablement il y avait une complication que je ne
voyais pas.
merci, Paolo
Es-tu bien sûr que ça marche toujours ? Il y avait là un gros pb dans l'ancien compilo qui faisait TOTAL_BOUCLE appels au serveur pour calculer #TOTAL_BOUCLE, c'était pas tenable (temps d'acces qui s'écroulent pour une pétition à succes, cf Sauvons La Recherche). J'ai corrigé ça justement en repérant les corps de boucles sans balises, remplacé par un numrows. Je ne sais plus si avec {exclus}
je ne le fais pas ou non, c'est à vérifier.
Es-tu bien sûr que ça marche toujours ? Il y avait là un gros pb dans
l'ancien compilo qui faisait TOTAL_BOUCLE appels au serveur pour
calculer #TOTAL_BOUCLE, c'était pas tenable (temps d'acces qui
s'écroulent pour une pétition à succes, cf Sauvons La Recherche). J'ai
corrigé ça justement en repérant les corps de boucles sans balises,
remplacé par un numrows. Je ne sais plus si avec {exclus}
je ne le fais pas ou non, c'est à vérifier.
En tout cas, j'ai l'impression que cela marche encore