Jeux de squelettes sous forme de plugin pour SPIP 3

lundi 23 juillet 2012, mise à jour vendredi 14 juillet 2023, par Maïeul
Suivre la vie du site RSS 2.0 Forum

Dans un précédent article, j’expliquais pourquoi et comment distribuer un jeu de squelettes sous forme de plugin. Cet article est une simple adaptation pour SPIP 3.

Les raisons de distribuer un jeux de squelette sous forme de plugin n’ont pas changé : je ne les répète donc pas. En revanche, le passage à SPIP 3 a introduit la transformation de plugin.xml à paquet.xml. Ces changements sont liés à la volonté d’avoir un formalisme plus important et plus propre. Voici donc un fichier paquet.xml minimal pour proposer un jeu de squelettes sous forme de paquet.xml. On lira les spécifications du paquet.xml pour aller plus loin.

<paquet
    prefix='prefix'
    categorie='squelette'
    version='x.y.z'
    etat='dev/test/stable'
    compatibilite="compatibilité de version SPIP"
>
    <nom>Nom du plugin</nom>
    <auteur lien="siteweb" mail="auteur@domaine.tld">Nom de l'auteur</auteur>
    <licence lien="siteweb">Licence</licence>
    <necessite nom="prefixplugin" compatibilite="une compatibilite" />
</paquet>

Selon la documentation officielle, la compatibilité prend l’une des formes suivantes :

  • [v1 ;v2] qui correspond à v1 <= SPIP <= v2
  • [v1 ;[ qui correspond à SPIP >= v1
  • [ ;v2[ qui correspond à SPIP < v2

et toutes les autres combinaisons avec inclusion ou pas des bornes.

Ainsi pour indiquer une compatibilité sur toute la branche SPIP 3, mettre :

À noter que ni la balise auteur ni la balise licence ne sont obligatoires, et leurs attributs sont facultatifs. En outre, on doit mettre une balise auteur par auteur.

Vous devez choisir entre l’un des trois états du squelette : dev, test, ou stable. Le prefix du squelette doit être parlant mais court. Vous pouvez préciser dans les attributs documentation et demonstration de la balise paquet l’url de la documentation et du site de démonstration.

En ce qui concerne la balise necessite, il faut en mettre une par plugin nécessaire, en mettant comme valeur de l’attribut nom le préfixe du plugin demandé.

Vous pouvez aussi préciser les versions compatibles de ces plugins, via l’attribut compatibilite, ayant la même syntaxe que pour la balise paquet.xml.

Il ne faut pas mettre de numéro de version dans le prefix ni dans le titre : l’attribut version sert à cela. Cette attribut doit avoir la forme x.y.z :

  • Un changement de X indique un changement majeure (rupture de compatibilité, réorganisation totale du code).
  • Un changement de Y indique un changement mineure (nouvelle fonctionalité).
  • Un changement de Z indique une correction de bug.

Il est très fortement demandée de mettre les trois chiffres pour une version d’un squelette.

Le fichier de langue

Avec paquet.xml certains éléments doivent être indiqués dans des fichiers de langue. Ces fichiers doivent être situés dans le dossier lang du plugin, et avoir un nom sous la forme : paquet-{préfixe_du_plugin}_{code_de_langue}.php. Par exemple, pour un jeux de squelette dont le prefix est toto, les chaînes de langues de descriptions du squelette seront à placer dans lang/paquet-toto_fr.php.

Il existe deux chaînes de langues quasi-obligatoires :

<?php
$GLOBALS[$GLOBALS['idx_lang']] = array(
	'prefix_description' => 'Description aussi succincte que possible du plugin, pas une documentation.',
	'prefix_slogan' => 'Slogan du plugin'
);
?>

Et le fichier options.php ?

Dans la précédente version de cet article, je présentais rapidement un fichier options.php recommandés. Ce fichier n’a plus de sens pour une distribution minimale d’un jeu de squelette, puisque SPIP 3 s’occupe automatiquement de supprimer les numéros devant les titres.

Cependant, pour une jeu de squelette propre à votre organisation et non générique, vous pouvez mettre un fichier prefix_options.php afin d’augmenter le quotat de cache, en mettant les lignes suivantes (pour augmenter à 100 Mo le quota de cache :

<?php
$GLOBALS['quota_cache'] = 100;
?>

Vérifier son paquet.xml

On pourra utiliser l’outil de vérification en ligne pour s’assurer de la conformité du fichier paquet.xml.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Acheter XeLaTeX appliqué aux sciences humaines

À propos

Titulaire d’un doctorat en théologie et d’un doctorat en histoire, sous la direction conjointe de Frédéric Amsler et d’Élisabeth_Malamut, je commence à partir du 1er août 2017 un travail d’édition critique des Actes de Barnabé.

Dans le cadre de la rédaction de mon mémoire de master puis de ma thèse de doctorat, j’ai été emmené à utiliser LaTeX, et j’ai donc décider de partager mes techniques. En effet, au cours de mes premiers apprentissages, j’ai découvert que les ressources indiquant les outils pour l’utilisation de LaTeX en sciences humaines étaient rares. Ceci m’a conduit à maintenir ou créer plusieurs packages LaTeX et à donner plusieurs formations.

J’ai reçu en 2018 le prix DANTE e.V pour mon travail autour de LaTeX, en particulier autour de reledmac et reledpar.

Par ailleurs, je suis membre actif de la communauté SPIP, au sein de laquelle j’administre le site Spip-Contrib. Je propose sur ce site quelques notes sur SPIP, en général à destination de webmestre.

Il m’arrive également de faire un petit peu de Python, de temps en temps.

Enfin, je tiens un blog de réflexions politiques et religieuses.

Maïeul