racine uZine

Dans la même rubrique
Mise en page : manuel de référence
26 mai 2003
16 août 2002
15 juin 2002
11 décembre 2001
7 décembre 2001
2 juin 2001
24 mai 2001
22 mai 2001
20 mai 2001
18 mai 2001
16 mai 2001
14 mai 2001
3 mai 2001
 
vendredi 16 août 2002

<INCLURE> d’autres squelettes

par l’équipe de SPIP

[SPIP 1.4] Lorsque l’on a des éléments de texte et des boucles communs à plusieurs fichiers, on peut vouloir extraire ces éléments des pages où ils se trouvent, les installer dans un fichier séparé, et les appeler depuis les autres squelettes. De cette façon, le code commun est regroupé dans un unique fichier, ce qui facilite notamment les modifications qui concernent plusieurs squelettes d’un seul coup.

Les habitués de PHP connaissent la fonction include, dont le principe est similaire à ce qui est présenté ici.

Dans SPIP, on peut appeler un fichier depuis un autre squelette grâce à la balise <INCLURE> (on peut aussi utiliser <INCLUDE>, qui est identique). Sa syntaxe complète est :

Le « fichier.php3 » est le nom du fichier que l’on veut intégrer dans sa page. Par exemple, imaginons que toutes les pages du site affichent les mêmes informations en bas de page. On regroupe alors le code HTML de ce « pied de page » dans un fichier : « pied.html », squelette lui-même appelé par la page « pied.php3 » (toujours selon le principe des couples de fichiers destinés à appeler des squelettes). Il suffit d’intégrer dans chacun des squelettes voulant appeler ce fichier :

Certaines inclusions peuvent dépendre d’une variable. Par exemple, imaginons un squelette « hierarchie.html/php3 », qui affiche la hiérarchie menant à une rubrique ; on appelerait cette page par une URL de la forme : hierarchie.php3?id_rubrique=xxx.

Dans les squelettes voulant afficher la hiérarchie à partir de la rubrique courante, il faut donc indiquer que le paramètre concerné est {id_rubrique} ; si nécessaire, on aura créé une boucle permettant de récupérer le numéro de la rubrique concernée, et on installera le code suivant à l’intérieur de cette boucle :

On peut imaginer que, dans certains squelettes, on désire récupérer non pas la hiérarchie en fonction d’une rubrique « variable » (la rubrique dans laquelle se trouve l’appel d’inclusion), mais en fonction d’une rubrique dont on connaît à l’avance le numéro. Pour cela, on peut fixer la valeur du paramètre ainsi :

N.B. Il est possible d’indiquer plusieurs paramètres dans la balise <INCLURE> ; cependant ce cas est rare. En effet, il est déjà rare dans un site sous SPIP de créer volontairement des URL à plusieurs variables, il est donc tout aussi rare d’avoir besoin d’inclusions avec plusieurs paramètres. En tout état de cause ces variables se cumuleraient par un « et logique » comme lorsqu’on les juxtapose dans la définition des boucles.

N.B. Le fichier inclus est lui-même un couple de fichiers de squelette. Ce fichier disposera donc de sa propre valeur de $delais. Cela peut s’avérer pratique pour éviter des recalculs d’éléments lourds du site, qui ne changent pas, en y affichant une liste d’éléments qui, eux, sont très régulièrement remis à jour.

 
 
l’équipe de SPIP
Imprimer
format impression
l’équipe de SPIP
15 juin 2001
15 juin 2002
14 décembre 2002
 
SPIP
Web indépendant