Les variantes de squelette

par langue, par rubrique ou par branche

SPIP permet de gérer des variantes de squelettes par rubrique, par branche ou par langue.

Comme mentionné au début du manuel de réference et dans la documentation sur le multilinguisme, SPIP permet de gérer des variantes des squelettes, par langue, par rubrique ou les deux.

Des mises en page différentes

On peut souhaiter, par exemple, que tous les articles d’une rubrique aient une mise en page différente : couleur de fond et taille de texte différentes, informations relatives aux mots clés mises en évidence, etc. Ou encore que le contenu d’une rubrique donnée soit présenté différement parce qu’il correspond à un type de données différent : par exemple en listant tous les articles par numéro, y compris leur contenu qui serait court, plutôt que les derniers en dates suivis d’une pagination de tous les articles, avec des liens vers les pages d’articles. On pourra aussi vouloir que l’interface du site soit différente selon la langue de l’article ou de la rubrique.

Les variantes de squelettes sont une solution simple — mais du coup, pas forcément très souple — pour permettre à SPIP de faire cela.
Pour lui indiquer d’utiliser des mises en pages différentes, il suffit de réaliser des squelettes différents auxquels on donnera des noms de fichier qui indiqueront quand il faut les utiliser :

-  rubrique=22.html : squelette pour la seule rubrique numéro 22,
-  rubrique-22.html : squelette pour la rubrique numéro 22 et toutes ses sous-rubriques,
-  article=22.html : squelette pour tous les articles de la seule rubrique 22,
-  article-22.html : squelette pour tous les articles de la rubrique 22 ainsi que tous ceux de toutes ses sous-rubriques,
-  article.en.html : squelette pour les articles en langue anglaise,
-  rubrique.html et article.html : squelettes par défaut, s’appliquant à toutes les rubriques et articles n’ayant pas de squelette particulier, leur présence est obligatoire dans le même répertoire que les variantes pour que celles-ci soient prises en compte.

Ordre exhaustif des variantes de squelette

Prenons l’exemple des squelettes d’article, avec des valeurs données de langue et de rubriques (mais l’explication ci-dessous reste valable pour les squelettes de rubriques ou les brèves, et bien sûr, quelles que soient les langues et les numéros de rubriques).

Rappellons avant tout que SPIP recherche d’abord le répertoire où il prendra le squelette, comme détaillé dans « Où placer les fichiers de squelettes ? », en cherchant s’il existe un fichier article.html. Il ne faut donc pas créer de variante de squelette (par exemple un fichier article.cs.html) sans créer dans le même répertoire un fichier article.html, au risque de voir notre variante ignorée au profit du squelette générique d’un répertoire de priorité moindre.

Si ce fichier existe, SPIP utilise les fichiers de squelettes selon leur nom en commençant par « les plus précis », avec précédence du rubricage par rapport à la langue. Voici donc l’ordre (par priorité décroissante) dans lequel sont utilisés les fichiers de squelettes selon leur nom :

-  article=8.cs.html : si ce fichier existe, il ne s’applique qu’aux articles en langue tchèque de la rubrique numéro 8 (mais pas aux articles contenus par ses sous-rubriques).

-  article=8.html : si ce fichier existe, il s’applique aux articles de la rubrique 8 (sauf aux articles concernés par un fichier spécifiant aussi la langue, tel que précedemment).

-  article-2.es.html : si ce fichier existe, il s’applique aux articles en espagnol contenus dans la rubrique 2 et ses sous-rubriques. Si la rubrique 8 est une sous-rubrique de la 2 et si les fichiers ci-dessus existent, ils prévaudront.

-  article-2.html : si ce fichier existe, il s’applique aux articles contenus dans la rubrique 2 et ses sous-rubriques (sauf aux articles concernés par les fichiers indiqués ci-dessus).

-  article.vi.html : si ce fichier existe, il s’applique aux articles en vietnamien, dans toutes les rubriques (sauf aux articles concernés par les fichiers indiqués ci-dessus).

-  Enfin, le fichier article.html s’applique à tous les articles qui ne sont pas concernés par les fichiers indiqués ci-dessus. Et, répétons-le, il est nécessaire que ce fichier existe.

Historique : Jusqu’à SPIP 1.7, SPIP 1.7.2 , si le fichier article.html n’existe pas, SPIP utilise alors le fichier article-dist.html qui est le fichier fourni par défaut. Voir « Qu’est-ce que les fichiers « dist » ? ».

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

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