Pour avoir une plus grande modularité du core, divers traitements spécialisés sont passés en modules programmés de façon autonome, grâce en particulier aux API de SPIP.
Depuis la version SPIP 3, ces éléments sont gérées comme des plugins optionnels, mais correspondants à des fonctionnalités historiques de SPIP, les programmes correspondants sont "verrouillés" dans SPIP pour être toujours accessibles en configuration : ils sont donc installés dans le dossier ./plugins-dist
.
Outre les squelettes publics principaux (dans ./squelettes-dist
), c’est donc parfois dans les sous-répertoires de ce dossier que vous devrez rechercher des squelettes natifs de spip que vous voudriez modifier, en travaillant sur une version copiée dans votre arborescence ./squelettes
.
Quelques particularités de ./plugins-dist
Le contenu de ce dossier est intégré à la distribution de SPIP chargée ; en conséquence, il n’est pas accessible par l’interface d’administration de SPIP (ni par SVP, ni par SkelEditor) ! Seuls les accès directs par FTP/SVN ou spip_loader permettent la mise-à-jour de ces plugins, et permettent d’assurer la cohérence de ces plugins, dits verrouillés, avec la version de SPIP opérationnelle.
Néanmoins, la mise à jour du source d’un tel plugin induit, lors de l’appel à la page de Configuration / Gestion des Plugins l’application automatique des mises-à-jour intégrées dans le source de prefix_administrations.php [.à.] function_préfix_upgrade().
En conséquence, ce n’est pas forcément une mauvaise pratique d’ajouter d’autres plugins dans ./plugins-dist
. Mais effectivement, il sera nécessaire de gérer manuellement leurs mises à jour, en SVN (ou GIT selon les plugins) du coup, car ils ne pourront être mis à jour depuis l’interface web, ou par FTP aussi, dans ce dernier cas il faut juste penser à enlever les anciens fichiers !
Article publié le 7 mai 2012, et actualisé en mai 2018 .
Répondre à cet article