$GLOBALS[’marqueur’]

  • Apparu en : SPIP 1.9

Le fichier cache dépend du contexte (page et variables de la page), mais aussi du nom de domaine, de la valeur de $dossier_squelettes et de la valeur de la variable globale $marqueur. Cette variable sert donc à différencier différents jeux de cache sur votre site, permettant, entre autres, de changer de squelette à la volée tout en bénéficiant du cache.

Plus les valeurs différentes de marqueur sont nombreuses, plus il y aura de jeux de cache différents, et donc le cache sera moins efficace car utilisé moins souvent : cette variable est donc à utiliser avec parcimonie.

Par exemple, quand un squelette varie en fonction de la présence d’un cookie sur le poste de l’internaute, il est impératif de demander à ce que le cache dépende aussi de ce cookie, car sinon la même version du cache serait servie à tout le monde et ne refléterait pas le squelette. On devra donc faire varier le marqueur selon le cookie, par exemple en ajoutant dans le fichier d’options :

# gestion des cookies
$GLOBALS['marqueur'] .= ':'.($_COOKIE['dev'] ?? 'dev' : 'prod');

Avec ce code, un squelette peut alors dépendre de ce cookie :

#SET{dev,#EVAL{$_COOKIE['dev']??''}}
[(#GET{dev}|?{Ici code pour développement,Ici code en production})]

Auteur JLuc Publié le : Mis à jour : 02/07/23