#SELF

#SELF retourne l’URL de la page appelée, nettoyée des variables propres à l’exécution de SPIP.

#SELF (depuis SPIP 1.8) retourne l’URL de la page courante. Les variables propres à l’exécution de SPIP (par exemple, var_mode) sont supprimées.

Exemple : pour une page avec l’url spip.php?article25&var_mode=recalcul, la balise #SELF placée dans article.html retournera spip.php?article25.

Usages

-  Certaines balises de formulaires acceptent un paramètre pour préciser sur quelle page le visiteur doit être redirigé après avoir validé le formulaire. #SELF peut alors être utilisé pour qu’il revienne sur la page courante. Exemple : [(#FORMULAIRE_FORUM{#SELF})]

-  Avec le filtre |parametre_url, pour ajouter des variables dans l’URL de la page courante. Exemple : [(#SELF|parametre_url{'id_mot','3'})] ajoute id_mot=3 à l’URL courante. Voir |parametre_url pour plus de détails.

-  #SELF est utile dans les formulaires, pour que l’utilisateur revienne à la page courante après validation :

<form action="#SELF">
[(#SELF|form_hidden)]
...
</form>

Le filtre |form_hidden (SPIP 1.9) calcule les champs cachés (hidden) du formulaire à partir des arguments de #SELF. Voir |form_hidden.

#SELF dans les squelettes inclus

Lorsque l’un des paramètres de l’URL de la page doit être récupéré dans un squelette inclus, #SELF doit être ajouté comme paramètre de l’INCLURE. De cette façon, un cache différent du squelette inclus sera créé pour chaque URL [1].
-  <INCLURE{fond=mon_squelette}{self=#SELF}>
-  <INCLURE{fond=mon_squelette}{self}>
-  <INCLURE{fond=mon_squelette}{env}>

Ce paramètre {self=#SELF} doit également être passé à un INCLURE lorsque l’on veut utiliser la balise #PAGINATION dans un squelette inclus, étant donné que celle-ci repose sur la fonction self pour retrouver la variable debut_....

Notes

[1Ceci constitue une sécurité contre une potentielle attaque XSS.

Auteur Aurélie Publié le : Mis à jour : 26/10/12

Traductions : عربي, català, English, Español, français, Nederlands