Lorsque l’on a des éléments communs a plusieurs fichiers, on peut les placer dans un fichier séparé, et les appeler chaque fois que nécessaire, sans avoir à les recopier.
Relisons d’abord cette page de la documentation officielle de SPIP :
« 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é qui sera appelé depuis les squelettes. De cette façon, le code commun est regroupé dans un unique fichier, au lieu d’être copié-collé laborieusement sur autant de pages, ce qui facilite notamment les modifications qui concernent plusieurs squelettes d’un seul coup. »
Exemple : plutôt que de copier-coller l’entête du site dans chacun des fichiers du squelette, on placera le code à part, dans un unique fichier, nommé inc-entete.html
par exemple. Ce fichier sera ensuite inclus dans les pages par cette simple balise : <INCLURE(page.php3){fond=inc-entete}>
Mon SPIP en kit
En poussant l’idée un peu plus loin, on se rend compte qu’on peut construire son squelette à grand renfort d’<INCLURE>
. Ces fragments de squelettes placés dans des fichiers séparés, constituent autant de briques que l’on peut alors agencer à loisir, de bien des façons. Mais en la matière, un schéma vaut mieux qu’un long discours :

Trois petits rectangles, quelques couleurs, et on y voit déjà mieux.
Le principe est de découper la page en plusieurs zones selon le contenu à y afficher. On obtient un site en kit, modulable, diversifié, et facile à personnaliser. Le rêve !
Comment faire ?
- Comment faire une inclusion ? En suivant tout simplement les consignes données dans la documentation officielle de SPIP : « Inclure d’autres squelettes ». À partir de SPIP 1.8.2, voir plutôt : « Comment faire un squelette facile à installer », au 3ème paragraphe : « le fichier page.php3 ».
Ou encore cette contrib récente, qui résume tout : « Coder ses squelettes avec des INCLURE ». - Où trouver des fragments de squelettes prêts à inclure ? Hummm, ça ne court pas encore les rues du Web, mais ça ne saurait tarder. Quelques-uns sont déjà disponibles ici ou là.
- Les partager ? Vous avez déjà de bien belles boucles dans des fichiers à inclure ? pensez aux autres : mettez vos noisettes à disposition ! Voici une méthode pour en fabriquer de faciles à partager.
Comment dire... euh... « noisettes » ?
Reste à trouver le nom de ces fameuses inclusions. Puisqu’il s’agit d’éléments du squelette, on pense spontanément à os (au risque de confondre avec l’abbréviation d’Operating Système, aïe, y’a un os là), ou plutôt à osselets ou encore bones.
Depuis peu, Fred et d’autres les appelent noisettes, en référence à la mascotte de SPIP, qui est un écureuil, mais évoquant également les javabeans, autre graine désignant également des fragments de code autonomes. On imagine volontiers notre écureuil favori faisant provision de coquilles, noix et noisettes, pour les ranger dans son placard. C’est folklo, mais fichtre, vous y comprennez quelque chose, vous ???
Olivier est peut-être sur la bonne voie, qui parle plus explicitement de microsquelettes... Modules ? spipmodules ? modul-os ? blocs ? briques ? légo ? spip-légo ? briques dynamiques ? badaboîtes ? inc-skel ??? Arrrgh, je sèche !
Vos commentaires
1. Le 23 janvier 2006 à 22:20, par thx11
En réponse à : Monter un squelette en kit
Le concept est intéressant et mérite d’être développé.
Pourrait-on imaginer que ces briques (= noisettes) soient conditionnelles, par exemple selon un mot-clé comme proposé dans l’article 302 de ce site Cela permettrait de garder qq squelettes avec toutes les options et de les activer à la demande. Est-ce possible ?
2. Le 23 janvier 2006 à 22:25, par Romy Têtue
En réponse à : Monter un squelette en kit
Bien évidemment, sinon ce ne serait vraiment pas intéressant :-) À titre d’exemple, et sans aller chercher bien loin, le présent site est truffé de « noisettes »... et la mise en page (tel menu-noisette à tel endroit ou pas) et contrôlé par mots-clés (2 suffisent amplement).
En fait, ça ne change pas grand-chose à la façon de penser la maquette d’un site (Spip ou autre). Ça simplifie juste le code, en évitant les copier-coller laborieux.
3. Le 24 janvier 2006 à 14:36, par Philippe
En réponse à : Monter son squelette en kit
J’utilisais sans le savoir le système des noisettes. Mon squelette basé sur les squelettes Bones et l’ancien Maiis, est truffé de noisettes placées dans un répertoire inclusions, et cela est très pratique, il faut bien l’avouer.
4. Le 15 mars 2006 à 04:16, par assobachant
En réponse à : Monter son squelette en kit
Allez je me lance dans le casse noisette
5. Le 2 mai 2006 à 19:49, par Smellup
En réponse à : Monter son squelette en kit
Bonjour,
Ca fait déjà longtemps que j’ai fait appel à vous pour les squelettes au début de mon apprentissage SPIP. Aujourd’hui j’ai bien avancé et je travaille sur le squelette SARKA-SPIP que vous m’aviez conseillé pour le rendre paramétrable via l’interface privée de SPIP et j’avoue que c’est très cool de voir les
modifications s’opérer en ligne.
Le problème majeur auquel je fais face aujourd’hui concerne les CSS. Pour intégrer des balises SPIP dans les CSS je n’ai pu le faire qu’en transformant le fichier .css en fichier .html et en utilisant l’inclusion classique via le couple php3/html. Ca fonctionne parfaitement et les couleurs ou autres attributs changent à loisir.
Cependant les styles sont inclus systématiquement dans la page transférée et cela ne me parait pas très optimisé ni très « propre »...
J’ai donc trouvé l’article Comment faire un squelette facile à
installer... qui propose une astuce sur les CSS basé sur
@header("Content-type : text/css") dans le fichier php3 qui serait censé prévenir SPIP que le fichier à compiler n’est pas un html mais un fichier css ; cependant j’échoue lamentablement dans la mise en application jusqu’à maintenant.
Comme personne ne répond à mon message sur SPIP-Contrib je me suis permis de m’adresser à vous car je suppose que vous connaissez cette article et comme le formulaire contact semble ne pas fonctionner j’ai choisi de répondre à cet article quelque peu en rapport avec le sujet.
Donc j’ai plusieurs interrogations sur l’article :
"style" habituelles ?
regles à respecter pour l’agencement des répertoires car mes styles sont dans /squelettes/styles ?
l’utiliser aussi pour les fichiers HTML ou le HTML reste-t-il le défaut quand aucune instruction @header n’est trouvée ?
Voila et merci d’avance pour votre aide.
A+
Eric
6. Le 18 juillet 2006 à 14:43, par julien marlaud
En réponse à : Monter son squelette en kit
bonjour et bravo
moi je debute en html spip et tout le toutim, mais cela fait 10 jours que je lis la doc et que je potasse tous les sites... bref que j’engrange a mort les infos pour bien commencer et j’avoue que l’idee des noisettes peut simplifie la vie au debutant comme moi et donc va favoriser et accentuer le developpement de cet outil spip que j’ai decouvert lors d’une formation pro en archi ’faire un site rapidement’. le prof nous a montrer spip et comment y mettre un squelette existant... mais mettre l’eau a la bouche en periode de canicule... du coup merci pour ces idees qui fusent de partout qui democratisent spip pour le rendre plus accessible et plus complexe a la fois (non, plus complet plutot !!)
A bientot quand j’aurais fait ma premiere noisette interessante.
7. Le 7 novembre 2006 à 14:31, par Romy Têtue
En réponse à : Monter son squelette en kit
Pour aller encore plus loin, voici une contribution très intéressante : « Proposition de structure des squelettes SPIP », où la structure est définie dans un seul fichier
squelette.html
modulé par desINCLURE
appelées par des variables passées dans l’URL.8. Le 3 décembre 2006 à 13:19, par Marc VALLETEAU de MOULLIAC
En réponse à : Monter son squelette en kit
Bonjour romy, tout d’abord, bravo pour ton site que je trouve non seulement beau et clair, mais en plus utile !! Belle association de contenu et d’interface ...
Corrige s’il-te-plaît le lien vers spipkit, qui est faux. Le bon ici :
http://s141610433.onlinehome.fr/spi...
Voilà, je développe aussi des sites et travaille en ce moment sur les outils de promotion et de relation clientèle ... Merci pour ton apport ...
Marc
9. Le 22 février 2008 à 13:32, par Mars
En réponse à : Monter son squelette en kit
Bonjour, j’essaye pitoyablement d’utiliser des inclusions dans mes squelettes.
L’intérêt du truc est flag, je l’utilisais en php (l’adresse du site donnée est un brouillon ; en dur mais avec des include en php)
Mais là pour me faire comprendre de Spip j’ai un pépin, est-ce que tu peux m’éclairer, stp ?
10. Le 20 mars 2008 à 15:59, par ?
En réponse à : Monter son squelette en kit
qu’elle est le squelette de lécureuil
Répondre à cet article
Suivre les commentaires :
| 