[spip-dev] #SELF fait parfois n'importe quoi...

Bonjour,

après de nombreux essais et changements sur mes squelettes, réglages de cache, etc, je n'arrive pas à venir à bout de ce problème lié à #SELF, #INCLURE et au cache de spip 1.9.2g

* contexte *
- un squelette a.html :

    #CACHE{3600}
    [(#INCLURE{fond=b}{lang})]

- un squelette b.html :

    #CACHE{0}
    #SET{autre_langue,fr}
    (...code sans impact...)
    <a href='[(#SELF|parametre_url{lang,#GET{autre_langue}})]'> lien</a>

- b.html est également inclus (statiquement uniquement) par d'autres squelettes, parfois avec des paramètres optionnels (id_rubrique ou id_article)

- a.html n'appelle jamais b.html avec d'autres paramètres

* symptômes *

- lors de *certains* calculs de a.html, le lien généré pointe vers n'importe quoi, parfois des articles ou des rubriques, mais plus bizarre : parfois sur des docs pdf qui sont donc normalement "#SELF-proof" (à noter, mais ce n'est normalement pas lié que b.html n'est jamais appelé avec un id_document).

- un simple var_mode=calcul de la page corrige le problème... jusqu'à ce qu'il réapparaisse aléatoirement sur un calcul ultérieur => souci lié au cache

- le bug a lieu avec ou sans url propres

- le bug apparaît toujours si on change a.html en mettant [(#INCLURE{fond=b}{lang}{self=#SELF})]

Quelqu'un a-t-il une idée d'où cela peut venir ?

Merci d'avance
    Simon Camerlo

-----Message d'origine-----
De : Simon Camerlo [mailto:scamerlo.work@gmail.com]
Envoyé : jeudi 26 mars 2009 08:39
À : spip
Objet : [spip-dev] #SELF fait parfois n'importe quoi...

Bonjour,

après de nombreux essais et changements sur mes squelettes,
réglages de cache, etc, je n'arrive pas à venir à bout de ce
problème lié à #SELF, #INCLURE et au cache de spip 1.9.2g

* contexte *
- un squelette a.html :

    #CACHE{3600}
    [(#INCLURE{fond=b}{lang})]

- un squelette b.html :

    #CACHE{0}

Ca ne sert à rien de fixer le cache d'un fichier inclus avec #INCLURE.

Olivier GENDRIN a écrit :

-----Message d'origine-----
De : Simon Camerlo [mailto:scamerlo.work@gmail.com] Envoyé : jeudi 26 mars 2009 08:39
À : spip
Objet : [spip-dev] #SELF fait parfois n'importe quoi...

Bonjour,

après de nombreux essais et changements sur mes squelettes, réglages de cache, etc, je n'arrive pas à venir à bout de ce problème lié à #SELF, #INCLURE et au cache de spip 1.9.2g

* contexte *
- un squelette a.html :

    #CACHE{3600}
    [(#INCLURE{fond=b}{lang})]

- un squelette b.html :

    #CACHE{0}

Ca ne sert à rien de fixer le cache d'un fichier inclus avec #INCLURE.

Dupont (avec un t) dirait même plus :
ça ne sert qu'avec un <INCLURE ...>

Ceci dit, est-ce que ça explique le problème rencontré sur #self etc ?

JL

JLuc wrote:

Olivier GENDRIN a écrit :

-----Message d'origine-----
De : Simon Camerlo [mailto:scamerlo.work@gmail.com] Envoyé : jeudi 26 mars 2009 08:39
À : spip
Objet : [spip-dev] #SELF fait parfois n'importe quoi...

C toi qui fait n'importe quoi. Il faut passer le self à l'inclure, il ne va pas deviner tout seul de quel self tu lui parles.

BoOz, toujours sympa dans ses réponses, c'est un style de vie ^^.

JLuc wrote:

Olivier GENDRIN a écrit :

-----Message d'origine-----
De : Simon Camerlo [mailto:scamerlo.work@gmail.com] Envoyé : jeudi 26 mars 2009 08:39
À : spip
Objet : [spip-dev] #SELF fait parfois n'importe quoi...

C toi qui fait n'importe quoi. Il faut passer le self en parametre à l'inclure, il ne va pas deviner tout seul de quel self tu lui parles.

BoOz, toujours sympa dans ses réponses, c'est un style de vie ^^.

BoOz, toujours sympa dans ses réponses, c'est un style de vie ^^.

Booz qui ne sait lire qu'à moitié aussi.

- le bug apparaît toujours si on change a.html en mettant [(#INCLURE{fond=b}{lang}{self=#SELF})]

Il faut effectivement le {self} obligatoirement, mais le fait est que ça ne résout apparemment pas son problème.

RastaPopoulos a écrit :

Simon Camerlo wrote:

RastaPopoulos a écrit :

BoOz, toujours sympa dans ses réponses, c'est un style de vie ^^.

Booz qui ne sait lire qu'à moitié aussi.

- le bug apparaît toujours si on change a.html en mettant [(#INCLURE{fond=b}{lang}{self=#SELF})]

Il faut effectivement le {self} obligatoirement, mais le fait est que ça ne résout apparemment pas son problème.

Pour info le comportement est le même qu'on mette {self=#SELF} ou pas (testé maintes et maintes fois) => ça marche 90% du temps, ça pète sans raison le reste, je n'ai aucune idée du pourquoi...

Et avec non pas {self=#SELF} mais {self} ?

Je n'ai rien testé mais ca e rapelle qqchose cette histoire de self.

BoOz

Simon Camerlo wrote:

RastaPopoulos a écrit :

Et avec non pas {self=#SELF} mais {self} ?

c’est pareil

Je n’ai rien testé mais ca e rapelle qqchose cette histoire de self.

et si tu testais ? …
Cédric

Cédric Morin a écrit :

Rho :stuck_out_tongue:

BoOz