Version 34 — Mars 2014 — goetsu
- trucs et astuces pour le portage des plugins sous spip 3
- trucs glanés à partir de l’analyse des commits de la zone qui signalent des adaptations du code pour compatibilité avec spip3.
Cette liste ouverte à tous : reportez y vos trucs et bonnes pratiques de portage des plugins vers spip3
Voir aussi :
- l’aide mémoire de la représentation en mémoire de la base de donnée (les « déclarations ») pour SPIP3, avec la comparaison avec SPIP2 : https://spreadsheets.google.com/spreadsheet/ccc?key=0Aq-LDsZ2YhzydDBvMjRSamQ5aWtfNWpKcnFESjQwU3c&hl=fr&authkey=CMmWhpEC
- migrer un plugin vers spip2
- Créer un nouvel objet dans le futur SPIP 3
- Configurer une fonctionnalité de votre site, ou un plugin
- CFG : comment s’en passer !
- Rédaction du paquet.xml
- Ça peut servir de respecter la charte typographique : ecrire/?exec=charte
(accessible grâce au plugin dev)
- Un plugin utile pour la migration de plugins pour SPIP 3 : Le plugin PlugOnet permet de transformer automatiquement un fichier plugin.xml en paquet.xml et contient une documentation détaillée de paquet.xml (dans la colonne de droite de /ecrire/ ?exec=plugonet_generer). Il permet aussi de valider les fichiers paquet.xml des plugins installés. Pour l’utiliser : Installer sur votre site le plugin à migrer sous SPIP 3, installer PlugOnet, puis aller dans /ecrire/ ?exec=plugonet_generer.
Vous pourrez utiliser ?exec=valider_xml&var_url=../plugins/auto/-nom_plugin-/paquet.xml
include_spip('plugins/installer'); // spip_version_compare dans SPIP 3.x
include_spip('inc/plugin'); // spip_version_compare dans SPIP 2.x
if (spip_version_compare($GLOBALS['spip_version_branche'], '3..0alpha', '>=')) {
define('_SPIP3', true);
} else {
define('_SPIP3', false);
}
Les Les utilisateurs du Couteau Suisse peuvent directement utiliser le test suivant (sans inclusion) :
_ if(defined('_SPIP30000
< code>if(defined('_SPIP30000 ')) ...
http://zone.spip.org/trac/spip-zone/changeset/48226 apporte son lot d’éléments migrateurs :
Paginations : Dans un fichier squelette du privé,[<p class='pagination'>(#PAGINATION)</p>]
devient [<p class='pagination'>(#PAGINATION{prive})</p>]
Nommages CSS : La classe ’liste_items’ devient ’liste-items’ !!
Boutons du menu de la partie privée
Les les écritures qui suivent sont un peu dépréciées car elles utilisent le plugin.xml. ->sousmenu[’..]]
_ En SPIP 3, mieux vaut écrire un paquet.xml (voir la doc) qui possède le tag pour définir les menus. De plus , [)@@@SPIP_DI" id="nh1">1] (en supposant que « PLUGIN » est le préfixe du plugin) :
de /base/PLUGIN_install.php
dans /PLUGIN_administrations.php