<p>id_auteur = #SESSION{id_auteur}</p>
<p>nom = #SESSION{nom}</p>
<p>statut = #SESSION{statut}</p>
[(#SESSION{id_auteur}|?{
Je suis connecté
})]
[(#SESSION{statut}|=={0minirezo}?{
Je suis administrateur
})]
Vous pourrez accéder à cette même documentation sur votre propre site
Pour reconnaître le visiteur authentifié, on s'appuie sur le mécanisme de session de SPIP. Toutefois, comme cette valeur est affichée dans un squelette, on doit aussi tenir compte du cache et empêcher que les données d'un visiteur soient utilisée par les suivants, le temps de la durée de vie de la page.
Deux moyens peuvent être employés :
On introduit donc, en plus de la balise, un
script session.php
,
appelable par la balise standard <INCLURE()>
.
Ce script est un clone du script standard de spip
(spip.php
) à ceci-près
qu'il défini un marqueur de squelette
basé sur l'identifiant du visiteur, s'il est défini.
On fera appel à la balise #[(#REM)]SESSION dans des squelettes inclus (qu'on appelle aussi noisettes...)
<INCLURE(session.php){fond=page_speciale}>
où page_speciale.html
contiendra l'un au l'autre
des exemples ci-dessus, ou de leurs combinaisons, ou d'autres
éléments issus de cette page de démonstration, ou bien encore,
de votre propre cru !
:D
Il est possible de gérer des valeurs supplémentaires à celles contenues dans le tableau $auteur_session.
Pour cela, il faut ajouter le paramètre {session}
à l'appel de squelettes inclus.
Dès lors, la balise #[(#REM)]SESSION s'appuiera aussi sur le tableau associatif $_SESSION php standard.
Exemple : <INCLURE(session.php){session}{fond=boite_session}>
Ce plugin introduit pour ces valeurs, une action permettant de créer/affecter une valeur en lui précisant un nom, ou de vider cette valeur. Pour faire appel à cette action, on utlisera soit un formulaire ad hoc, soit, dans ce type précis de noisettes, la balise #[(#REM)]URL_ACTION_AUTEUR de la manière suivante:
<a href="[(#[(#REM)]URL_ACTION_AUTEUR{session,[(#[(#REM)]ENV{session})]-affecter-nom-valeur,url})]">
texte du lien
</a>
ou nom sera le code employé pour restituer la valeur via la notation #[(#REM)]SESSION{nom},
valeur pourra être une balise spip ou une constante,
url, l'adresse de destination du lien, #[(#REM)]SELF ou tout autre adresse imaginable.
ou bien
<a href="[(#[(#REM)]URL_ACTION_AUTEUR{session,[(#[(#REM)]ENV{session})]-vider-nom,url})]">
texte du lien
</a>