Avec le template par défaut, les pages d'article ont comme titre le
nom du site, pas celui de l'article. Mon htdig du coup m'affiche
toujours le même nom de page.
Sam
Avec le template par défaut, les pages d'article ont comme titre le
nom du site, pas celui de l'article. Mon htdig du coup m'affiche
toujours le même nom de page.
Sam
Ok, je viens de comprendre pourquoi, le titre n'est pas disponible lorsqu'on
en est à cet endroit de la substitution.
Ceci dit, est-ce un problème de "noter" lors de l'interprétation des templates
la liste des variables non substituées, et de capturer pour ces variables
la première (ou dernière) valeur disponible? Une seconde phase de
substitution pourrait être lancée uniquement si au moins une variable
n'a pas été résolue. Les variables non résolues lors de la seconde phase
pourraient être remplacées par le <blink>#NOMVARIABLE</blink> comme c'est
le cas actuellement.
Serait-ce vraiment trop lourd? La seconde phase n'aurait pas à interpréter
les boucles ou quoi que ce soit, et pourrait même (j'avoue, je n'ai pas
encore regardé le code de substitution de SPIP) fonctionner avec des
"ropes" (des chaînes liées les unes aux autres, pour pouvoir facilement
retrouver les variables à remplacer).
Sam
Salut,
> > Avec le template par défaut, les pages d'article ont comme titre le
> > nom du site, pas celui de l'article. Mon htdig du coup m'affiche
> > toujours le même nom de page.
>
> Ok, je viens de comprendre pourquoi, le titre n'est pas disponible lorsqu'on
> en est à cet endroit de la substitution.
Non, en fait, c'est juste qu'on n'a pas fignolé les squelettes par défaut.
Tu peux tout à fait remplacer :
<title>#NOM_SITE_SPIP</title>
par :
<title><BOUCLE_titre(ARTICLES) {id_article}>#TITRE</BOUCLE_titre></title>
> Serait-ce vraiment trop lourd? La seconde phase n'aurait pas à interpréter
> les boucles ou quoi que ce soit, et pourrait même (j'avoue, je n'ai pas
> encore regardé le code de substitution de SPIP) fonctionner avec des
> "ropes" (des chaînes liées les unes aux autres, pour pouvoir facilement
> retrouver les variables à remplacer).
Je ne vois pas exactement ce que tu appelles "ropes". Pour ce qui est
de l'exécution des templates :
- une première phase prend le squelette (X.html) et le compile en un
fichier PHP correspondant (CACHE/skel_X.php3). Ce fichier comprend
une fonction PHP par boucle, et une fonction principale correspondant
à ce qui est extérieur à toute boucle. Ces fonctions prennent en
paramètre le $contexte, qui comprend à la fois les variables d'URL
et les paramètres hérités des boucles précédentes (par exemple
id_article, id_rubrique, id_secteur à l'intérieur d'une boucle
articles).
- une deuxième phase inclut le fichier PHP (CACHE/skel_X.php3)
et l'exécute (i.e. appelle la fonction principale) en passant le
contexte de la page appelée. Le texte retourné est sauvé dans un
fichier (CACHE/Y/bidule).
- une troisième phase inclut simplement le fichier (CACHE/Y/bidule).
L'inclusion permet d'exécuter du code PHP depuis les squelettes.
C'est donc en fait un système de cache à deux niveaux : l'un travaille
au niveau squelette, et l'autre au niveau page appelée (URI).
a+
Antoine.
par cette belle journée, Samuel Tardieu raconte ce que suit :
Avec le template par défaut, les pages d'article ont comme titre le
nom du site, pas celui de l'article. Mon htdig du coup m'affiche
toujours le même nom de page.Sam
Je profite de ce sujet pour demander si les squelettes par défauts vont
évoluer avec la version 1.4. Est-ce que qqn travaille dessus ? est-ce que ça
fait partie des tâches en cours ?
je trouve que Karim à fait de super squelettes pour la version 1.4, si on se
met à plusieurs à les utiliser pour vérifier la présence de bug on pourrait
peut être les proposer comme squelettes par défaut. Non ?
Pour parler du sujet de sam, il faut rajouter une boucle dans le head pour
avoir le titre de l'article, et c'est très utile pour le référencement ou la
recherche (cf. [uZine 3] Remplir les meta-tags HTML des pages d’article , comment remplir les
meta-tags) et c'est le genre de truc qu'on pourrait avoir dans le squelette
par défaut.
Dorian
---------oO0o0Oo----------
::: Association 3e StudiO :::
:: http://www.3studio.org ::
Non, en fait, c'est juste qu'on n'a pas fignolé les squelettes par défaut.
Tu peux tout à fait remplacer :
<title>#NOM_SITE_SPIP</title>
par :
<title><BOUCLE_titre(ARTICLES) {id_article}>#TITRE</BOUCLE_titre></title>
Ok, fait. Serait-il possible de le changer dans les squelettes par
défaut? Je pense que le #NOM_SITE_SPIP n'est pas utile et introduit
beaucoup de confusion dans les moteurs de recherche.
Sam
PS/ merci pour l'explication fonctionnelle
par cette belle journée, Samuel Tardieu raconte ce que suit :
> Avec le template par défaut, les pages d'article ont comme titre le
> nom du site, pas celui de l'article. Mon htdig du coup m'affiche
> toujours le même nom de page.
Corrigé
@ Oo-- DoriaN --oO <dorian@3studio.org> :
Je profite de ce sujet pour demander si les squelettes par défauts vont
évoluer avec la version 1.4. Est-ce que qqn travaille dessus ? est-ce que ça
fait partie des tâches en cours ?
je trouve que Karim à fait de super squelettes pour la version 1.4, si on se
met à plusieurs à les utiliser pour vérifier la présence de bug on pourrait
peut être les proposer comme squelettes par défaut. Non ?
Les squelettes par défaut sont volontairement très laids, pour que chacun
ait envie d'adapter. Mais c'est peut-être une mauvaise stratégie ? En tous
cas évitons de fournir des squelettes par défaut comportant des images,
histoire de ne pas alourdir la distrib inutilement. Même si ça fait
plaisir...
-- Fil