Accueil > SPIP > Jeu de squelettes > Jeux de squelettes sous forme de plugin pour SPIP 3

Jeux de squelettes sous forme de plugin pour SPIP 3

lundi 23 juillet 2012, par Maïeul

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.

Un message, un commentaire ?

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)